ERROR 3586: Insufficient projections to answer query

In order to test the restoration of an object-level backup, I created a config file and followed with a backup of one table. I then proceeded to delete the table and try to restore it with vbr.py. Within my database, I can see that the table has indeed restored but I keep getting an error that states: "ERROR 3586:  Insufficient projections to answer query" whenever I try to select the recovered table. I am not sure how to go about resolving this issue. 

 

 

Comments

  • SruthiASruthiA Administrator

    Hi,

     

      The following might be the possible reasons for such error

     

    1) There is no projection that has all of the columns needed by a query.
     2) A node is down and you have not defined a K=1 physical schema.

     

     

    -Regards,

     Sruthi

     

  • Hi Sruthi,

     

    I had found those potential reasons in the documentation, but the k-safety reasoning doesn't apply at all since I didn't even manipulate the nodes, just a single table in a schema. As for the projections, I had tried the select query on the projection itself, which had worked, but it seems like whenever the schema is used to reference the table, I get the original error message. 

  • SruthiASruthiA Administrator

    Hi,

     

     Could you please check if any node is marked as ephemeral? issue select * from nodes

     

    -Regards,

     Sruthi

     

     

  • All 3 nodes are not marked as ephemeral.

  • SruthiASruthiA Administrator

    Hi,

     

      All nodes should be in status UP. if the node is marked ephemeral, then projection is not at Ksafe 1. 

     

     

    -Regards,

     Sruthi

  • SruthiASruthiA Administrator

    Hi,

     

      Can you check if is_up_to_date column for the projection you are trying to backup is t?

     

    issue select * from projections;

     

    -Regards,

     Sruthi

     

  • They are not up to date. 

  • SruthiASruthiA Administrator

    Hi,

     

      They have to be up to date in order to take backup of the table. Projections must be up to date to be used in queries. In order to make projections up to date, you need to refresh them. issue the command

     

    select REFRESH('tablename') 

     

    If you run REFRESH() without arguments, it refreshes all non up to date projections.

     

    -Regards,

     Sruthi

  • I tried to refresh the projections after restoration, which were all updated, but after using the select query, it did not return any rows. Is there a particular time I must refresh the projections?

  • SruthiASruthiA Administrator

    Hi,

     

      You need to refresh it after creating the projection so that it can be used.

     

    -Regards,

     Sruthi

     

  • It seems to be working once I refresh it. I will continue testing to see if anything else comes up. Thank you!

  • prashantshekharprashantshekhar Vertica Customer

    You need to refresh the Table after creating the Projection! It can solve this issue.

    • Prashant Shekhar

Leave a Comment

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