[MCOL-604] mcsadmin startup changes permission on /dev/shm Created: 2017-03-03  Updated: 2017-03-17  Resolved: 2017-03-17

Status: Closed
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: 1.0.7
Fix Version/s: 1.0.8

Type: Bug Priority: Major
Reporter: joe piscitella Assignee: Daniel Lee (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Environment:

ubuntu 16


Issue Links:
Relates
relates to MCOL-466 installer makes /dev/shm world writab... Closed
Sprint: 2017-5, 2017-6

 Description   

When you run the mcsadmin startSystem it changes the permission on /dev/shm which then breaks other components on the system. An example here is pacemaker requires the write privileges to the system which when removed it now longer can function and it break linux ha stack.



 Comments   
Comment by David Hill (Inactive) [ 2017-03-03 ]

One question, are you doing a root or a non-root user install?

Even though it looks like we change /dev/shm for both cases since our Code needs to access and update, just curious what your user-case is?

Thanks, David Hill

Comment by joe piscitella [ 2017-03-03 ]

Root install.

We do not use/have shared storage but need to be able to have HA environment. Looking to integrate ColumnStore into the linux ha stack (corosync/pacemaker/drbd) to be able to build HA environment with local storage leverage DRBD for data replication

Comment by David Hill (Inactive) [ 2017-03-03 ]

Ok, the changing of /dev/shm isn't really needed for root installs. But at this time, it is needed to a non-root install. Since you are doing a root install, you could make these few line code changes and rebuild, if you wanted to go that route to correct the problem at this time.

repo:

https://github.com/mariadb-corporation/mariadb-columnstore-engine

3 files:

Comment out line #209
https://github.com/mariadb-corporation/mariadb-columnstore-engine/blob/master/oam/install_scripts/post-install

Comment out line #126
https://github.com/mariadb-corporation/mariadb-columnstore-engine/blob/master/procmon/main.cpp

Comment out line #957
https://github.com/mariadb-corporation/mariadb-columnstore-engine/blob/master/procmon/processmonitor.cpp

Then to rebuild, follow the build instructions:

https://github.com/mariadb-corporation/mariadb-columnstore-server

Comment by David Hill (Inactive) [ 2017-03-03 ]

But this will be corrected in a future release, just not in the roadmap at this time.

Thanks for reporting.

Comment by David Thompson (Inactive) [ 2017-03-03 ]

It'd be great to hear how you go with using DRBD, could be a better lightweight solution than glusterfs. Per related bug we do plan to clean this up and hopefully remove need to do this even for non root install, some of this comes from infinidb's roots as an appliance where it embedded stuff like this to make it more lights out, however this often conflicts with more general purpose deployments.

Comment by David Hill (Inactive) [ 2017-03-08 ]

part of the MCOL-607 pull request

Comment by Andrew Boren [ 2017-03-09 ]

Thank you for the workaround. We were able to compile the engine with said changes, and it is working as expected. I do have a question though. I did not see a method to create debian (ubuntu) packages for the engine. Is there something I'm missing? Is there documentation to do so from source? If not, would it be possible to request packages be created with the changes we need?

David Thompson, although i would still consider it beta, we were able to integrate mcs into the linux ha stack, including drbd as the storage back-end. Is there a particular place or method I can upload the configurations for each component?

Comment by David Thompson (Inactive) [ 2017-03-09 ]

hill - can you provide details on the package building, this is also missing from https://github.com/mariadb-corporation/mariadb-columnstore-server/blob/master/README.md which should be corrected.

aboren - i'm not sure what you mean with your last question - do you mean providing some notes on the setup you got working or do you mean getting this into a build? On the latter side we plan to include this in our 1.0.8 maintenance release in the next couple of weeks.

Comment by Andrew Boren [ 2017-03-09 ]

You asked how we were able to use drbd with mcs, I just wanted to know where we can supply the info and configs we used.

Comment by David Thompson (Inactive) [ 2017-03-09 ]

Got it, that'd be great. Probably simplest if you can just add as an attachment to this jira? We'd then make it available in our knowledge base (which you could do to but it's some effort).

Comment by David Hill (Inactive) [ 2017-03-09 ]

At this current time, the GITHUB readme file shows how to do binary builds only...

Here is how to perform a build to get the debian packages...

git clone https://github.com/mariadb-corporation/mariadb-columnstore-server.git
cd mariadb-columnstore-server
git clone https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
git checkout develop
cmake . -DWITH_READLINE=1 -DDEB=xenial -DPLUGIN_CONNECT=NO -DWITH_WSREP=OFF -DINSTALL_LAYOUT=DEB -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb/columnstore/mysql/ -DCPACK_DEB_EXCLUDE_FROM_AUTO_FILELIST_ADDITION=/usr/local
make -jN # N is the number of concurrent build processes and should likely be the number of cores available
sudo make install
make package
cd mariadb-columnstore-engine
git checkout develop
cmake . -DDEB=xenial
make -jN # same as above with respect to concurrent processes
sudo make install
make package

Comment by Andrew Boren [ 2017-03-09 ]

Perfect, worked like a charm. Thank you very much!

Comment by Daniel Lee (Inactive) [ 2017-03-17 ]

Build verified: 1.0.8-1

Verified the permission of the /dev/shm directory is not modified by root installation.

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