Uploaded image for project: 'Apache Trafodion (Retired)'
  1. Apache Trafodion (Retired)
  2. TRAFODION-3308

Uninformative error messages when executables are unavailable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.4
    • 2.4
    • sql-cmp
    • None

    Description

      When the tdm_arkcmp executable is unavailable on a Trafodion node due to a file system error, we get the following less-than-informative error:

      >>create schema scythians;

          • ERROR[2012] Server process tdm_arkcmp could not be created on
            NSK - Operating system error 4022, TPCError = 53, error detail = 0.  (See variants of Seabed procedure msg_mon_start_process for details).
          • ERROR[2013] Server process tdm_arkcmp could not be created on
            NSK - Operating system error 4022.
          • ERROR[2002] Internal error: cannot create compiler.
          • ERROR[8822] The statement was not prepared.

      — SQL operation failed with errors.

      >> 

      We get a similarly uninformative series of errors when the tdm_arkesp executable is unavailable:

      >>prepare s1 from select * From t1 where b = 6;

      — SQL command prepared.

      >>explain options 'f' s1;

      LC   RC   OP   OPERATOR              OPT       DESCRIPTION           CARD

      ---- ---- ---- --------------------  --------  --------------------  ---------

      2    .    3    root                                                  1.30E+004

      1    .    2    esp_exchange                    1:2(hash2)            1.30E+004

      .    .    1    trafodion_scan                  T1                    1.30E+004

      — SQL operation complete.

      >>execute s1;

          • ERROR[2012] Server process tdm_arkesp could not be created on \NSK cpu 0 - Operating system error 4022, TPCError = 53, error detail = 0.  (See variants of Seabed procedure msg_mon_start_process for details).
          • ERROR[2013] Server process tdm_arkesp could not be created on \NSK cpu 0 - Operating system error 4022.
          • ERROR[2012] Server process tdm_arkesp could not be created on \NSK cpu 0 - Operating system error 4022, TPCError = 53, error detail = 0.  (See variants of Seabed procedure msg_mon_start_process for details).

      — 0 row(s) selected.

      >> 

      Among the issues with these error messages:

      1. They do not give the correct node name where we were trying to create the process, but instead report NSK.
      2. Error 2013 is completely redundant; everything it says is in error 2012.
      3. Error 2012 could be much more informative. Text could be added explaining the meaning of the error codes given.
      4. In the tdm_arkcmp case, error 2002 adds no information at all.

      To reproduce these issues on a development instance, first create a table T1 with one million rows (so a parallel plan will be picked for the tdm_arkesp example). Then go to the trafodion/core/sql/lib/linux/64bit/debug directory and rename the tdm_arkcmp and tdm_arkesp executables to something else. Try any DDL command to get the tdm_arkcmp failure. Try any parallel DML statement to get the tdm_arkesp failure.

      It is likely that similar issues exist for other processes, e.g. tdm_udrserv.

      Attachments

        Issue Links

          Activity

            People

              dbirdsall Dave Birdsall
              dbirdsall Dave Birdsall
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 5h 20m
                  5h 20m