[MCOL-1517] cpimport using results piped from a query Created: 2018-06-28  Updated: 2022-11-05  Resolved: 2022-11-05

Status: Closed
Project: MariaDB ColumnStore
Component/s: cpimport
Affects Version/s: 1.1.4
Fix Version/s: Icebox

Type: Bug Priority: Major
Reporter: Daniel Lee (Inactive) Assignee: Unassigned
Resolution: Won't Do Votes: 0
Labels: None


 Description   

This issue was reported on support ticket 20012. Please refer to the support ticket for additional info.

I reproduced the issue on a 1um2pm installation, executing on the um.

The following query would cause cpimport on both PMs to failed
mcsmysql mytest -q -e 'select * from orders;'| /usr/local/mariadb/columnstore/bin/cpimport mytest orders STDIN -s "\t" -E '"' -C "
" -d 3 -S -e 0

After the failure, the stack is in a bad state.

I tried to run cpimport again, it reported the stack is not ready.

Debug level set to 3
ModuleType um
InstallType 1
PM Count 2
LogName : /usr/local/mariadb/columnstore/data/bulk/log/cpimport_0628221205_12412.log
ErrLogName : /usr/local/mariadb/columnstore/data/bulk/log/cpimport_0628221205_12412.err
Adding PmId - 1
Adding PmId - 2
getModuleStatus() ModName = pm1
ModName = pm1 opState = 4
getModuleStatus() ModName = pm2
ModName = pm2 opState = 4
2018-06-28 22:12:05 (12412) ERR : System is not ready (0). Verify that InfiniDB is up and ready
Inside WESplitterApp::processMessages() Mode = 1
ProcessMsgs aJobId
CPImport cmd line - cpimport.bin -e 0 -d 3 -E " -C \ -R /tmp/columnstore_tmp_files/BrmRpt052822120512412.rpt -m 1 -P um1-12412 -S -uc11b7e2c-cbdd-46a3-9bd9-da8f845ef32e mytest orders
BrmReport FileName - /tmp/columnstore_tmp_files/BrmRpt052822120512412.rpt
cleaning up Client threads
Calling WESplitterApp Destructor

mcsadmin> getprocessstatus
getprocessstatus Thu Jun 28 22:12:18 2018

MariaDB ColumnStore Process statuses

Process Module Status Last Status Change Process ID
------------------ ------ --------------- ------------------------ ----------

        • printProcessStatus Failed = API Failure return in getProcessStatus:MessageQueueClient API:
          API Failure return in getProcessStatus:write API
          mcsadmin> restartsystem
          restartsystem Thu Jun 28 22:12:33 2018
          NOTE: These module(s) are DISABLED: um1

Do you want to proceed: (y or n) [n]: y

After the system restarted, both DMLProc and DDLProc are in MAN_OFFLINE state:

DDLProc um1 MAN_OFFLINE Thu Jun 28 22:18:00 2018
DMLProc um1 MAN_OFFLINE Thu Jun 28 22:18:01 2018

The stack became normal again after shutdownsystem and startsystem commands.

This following command would work:

mcsmysql mytest -q -e 'select * from orders;'| /usr/local/mariadb/columnstore/bin/cpimport mytest orders STDIN -d 3 -s '\t'

The following command with additional options would fail.

mcsmysql mytest -q -e 'select * from orders;'| /usr/local/mariadb/columnstore/bin/cpimport mytest orders STDIN -s '\' -E '"' -C "
" -d 3 -S -e 0

Jun 28 22:30:15 localhost writeengineserver[4173]: 15.312843 |0|0|0| E 32 CAL0000: pushing data : PIPE error .........Broken pipe
Jun 28 22:30:17 localhost writeengineserver[4173]: 17.129891 |0|0|0| E 32 CAL0000: 363 : cpimport exit on failure (signal -1)
Jun 28 22:31:17 localhost cpimport.bin[26320]: 17.748758 |0|0|0| E 34 CAL0087: BulkLoad Error: Bulk modes 1 and 2 require -R rptFileName.
Jun 28 22:31:17 localhost writeengineserver[4173]: 17.940664 |0|0|0| E 32 CAL0000: pushing data : PIPE error .........Broken pipe
Jun 28 22:31:19 localhost writeengineserver[4173]: 19.825863 |0|0|0| E 32 CAL0000: 1866 : cpimport exit on failure (signal -1)



 Comments   
Comment by Todd Stoffel (Inactive) [ 2022-11-05 ]

This item is being closed because it was well passed the expiration date with no activity. If you suspect this was done in error please create a new ticket.

Generated at Thu Feb 08 02:29:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.