Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
1.1.6
-
None
-
None
-
2018-21, 2019-01, 2019-02, 2019-03
Description
Alas, the problem is not fully resolved. Here is my test sequence:
1) On one Ubuntu 18.04 docker node I installed ColumnStore server 1.1.6 postConfigured as a multi-server (with a single node).
2) On another Ubuntu 18.04 docker node I installed ColumnStore C++ BulkWrite SDK source from columnstore-1.1.6.tar.gz
I also copied the Columnstore.xml from the server node to the api node.
The unmodified basic_bulk_insert example worked as expected, while inserting remotely.
I modified the basic_bulk_insert.cpp adding the sleep(10) equivalent by adding three lines as shown below:
...
|
#include <iostream>
|
#include <chrono>
|
#include <thread>
|
|
int main(void)
|
...
|
std::this_thread::sleep_for(std::chrono::seconds(10));
|
bulk->commit();
|
...
|
Then launched the "sleeping" basic_bulk_insert and terminated this process with kill -9.
As expected, the ColumnStore server left with the table lock:
/usr/local/mariadb/columnstore/bin/viewtablelock
|
There is 1 table lock
|
|
Table LockID Process PID Session Txn CreationTime State DBRoots
|
test.t1 26 mcsapi 410 127693 10 Mon Sep 17 01:23:22 2018 LOADING 1
|
Also the second (original) basic_bulk_insert attempt resulted in
/usr/local/share/doc/mcsapi/example/basic_bulk_insert
|
Error caught: Table already locked by PID: 410 'mcsapi' session ID: 127693 txn ID: 10
|
As Andrew directed above, I cleared this lock on the server side with:
/usr/local/mariadb/columnstore/bin/cleartablelock 26
|
Rolling back and clearing table lock for table test.t1; table lock 26
|
|
Sending rollback request to PM1...
|
Successful rollback response from PM1
|
Sending cleanup request to PM1...
|
Successful cleanup response from PM1
|
|
Table lock 26 for table test.t1 is cleared.
|
|
/usr/local/mariadb/columnstore/bin/viewtablelock
|
No tables are locked in the database.
|
After clearing the lock, the (original) basic_bulk_insert attempt was successful.
Unfortunately, the problem reported above, remains.
mcsadmin shutdown y
|
shutdownsystem Mon Sep 17 01:32:28 2018
|
|
This command stops the processing of applications on all Modules within the MariaDB ColumnStore System
|
|
Checking for active transactions
|
|
There are active transactions being processed
|
Your options are:
|
Cancel -- Cancel the shutdown request
|
Wait -- Wait for write operations to end and then shutdown
|
Force -- Force a shutdown
|
What would you like to do: [Cancel]:
|
As earlier, the rollback -p command does not print any transactions and there is no file /usr/local/mariadb/columnstore/data1/systemFiles/dataTransaction