Create projection without specifying KSAFE value not respecting system designed_fault_tolerance

Hi All,

 

Has anyone here ever encountered a problem where the creation of a projection does not respect the system designed_fault_tolerance for the default ksafety?

 

We are experiencing the following issue on Vertica 7.1.1-0:

 

1- adgear_vertica=> select designed_fault_tolerance from system;
   designed_fault_tolerance
  --------------------------
                          1
  (1 row)

 

 

2- CREATE PROJECTION without a KSAFE clause

 

3- adgear_vertica=> SELECT projection_name, verified_fault_tolerance FROM projections WHERE projection_schema='production' AND anchor_table_name='test_fact_table';
      projection_name       | verified_fault_tolerance
----------------------------+--------------------------
test_fact_table_b0 |                        1
test_fact_table_b1 |                        1
test_fact_table_p  |                        0
(3 rows)

 

Note that test_fact_table_b0 and test_fact_table_b1 are the default superprojection from the CREATE TABLE statement.

 

The docs state the following, but this is not the behavior we are seeing:

 

"If you omit the KSAFE parameter or a KSAFE value, HP Vertica creates a single projection at the current system K-safety level. Unless you are creating a projection on a single-node database, the default KSAFE value is at least 1. "

 

Thanks,

 

Emanuel

Comments

  • For completeness, the current_default_tolerance also lists as 1:

     

    adgear_vertica=> SELECT designed_fault_tolerance, current_fault_tolerance FROM system;
     designed_fault_tolerance | current_fault_tolerance
    --------------------------+-------------------------
                            1 |                       1
    (1 row)

  • FYI, found the following forum post which states that specifying KSAFE without a safety level accomplishes what we need.

     

    https://community.dev.hpe.com/t5/Vertica-Forum/Create-buddy-projections-based-on-k-safety-with-a-single-CREATE/td-p/216461

     

    So the docs are definitely wrong since they say that the KSAFE parameter can also be omitted to achieve this.

  • It seems that this is caused by the following Vertica bug:

     

    VER-35796-Projections created without the KSAFE keyword are not at system ksafety level
    This is fixed in 7.2
    However documentation was not updated properly and it will be fixed in 7.2.1

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file