-
Notifications
You must be signed in to change notification settings - Fork 209
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is there any sample app that shows those most important features comdb2 provides? #310
Comments
Implementation notes should probably be a separate document in the docs. If you just wanted a really quick summary:
If you're looking for a program that demonstrates some of these features, there's nothing included in the repository, unfortunately. |
Thanks for the information, I'll look into those functions later.
How to debug in local single node? |
|
Updated "No Concurrency" to Serializable Isolation level. When you have a cluster of comdb2, how to tell which one is master? |
You shouldn't ever need to know who is master. |
Thanks for the info. I'll check it out. I found tests under "linearizable" is very helpful. I tried to build the project in CLION(an Intellij C/C++ IDE) but I found I have to manully import lots of header files and there are some erros when some structure points to its field, it looks like it's related to header files is not used or marco is undefined. I wonder what IDE BloomBerg comdb2 developers used. |
vim, emacs, vscode, in decreasing order of popularity. The build/install instructions are your best bet for building the software. |
Yes, in command line my build and install is finished successfully. |
OK, I use Eclipse CDT to import the Makefile project and everything works! I added a line in testdb.lrl of every node to make it a cluster: I'm in Ubuntu 14.04, I had to manully install lots of dependent packages to make the comdb2 build pass. I saw that in the Dockerfile.build it run apt-get to install libprotobuf-c1, also the image based on Any idea what goes wrong? |
@AnDongLi That seems strange. Can you try rebuilding the images after switching to libprotobuf-c-dev in Dockerfile.standalone? |
same result. One thing I realize is that my host ubuntu is trusty while both Dockerfile.build and Dockerfile.standalone Does these docker file config still work when the development host's OS is different from ubuntu:xenial? |
Can you please run |
What was your search command? dpkg -S ? Since the standalone docker file did attempt to install libprotobuf-c, the image must have the shared object file, also evident from the ldd command output.
I don't think version mismatch could cause this. |
@riverszhang89 @nirbhayc ===Container output=== When the comdb2, cdb2sql are built in the host, do they depends on that specific version of share library? Isn't it the reason that libprotobuf-c.so.0 is asked for when I run cdb2sql in container? |
These binaries are built inside the container. Did you copy the binaries built on the host to the container? |
@AnDongLi : Looks like you built the binaries on the host, trusty (libprotobuf-c.so.0) and then trying to run it in xenial (libprotobuf-c.so.1), hence the error. |
@nirbhayc @riverszhang89 docker build -t comdb2-build:7.0.0pre -f contrib/docker/Dockerfile.build . If I run 'make' first and then 'make docker-cluster' there is no such error. |
It looks like a DNS issue. |
Thank you for the valuable feedback. However, the docker discussion should be moved to a new thread. I'm going to close the issue. Feel free to open a new one and we can continue there. |
Yes, that's a Docker DNS issue, it is fixed by uncommented this line in /etc/default/docker: |
Awesome! Thank you for sharing the solution with us. |
I want to learn to know how comdb2 implements some great features such as No Concurrency, Perfect Availablity,etc. I went through the source codes, so far the closest sample I could find is the tests.
Where should I begin? Is there any design document that provide some implementation details?
If I want to debug in an IDE which file is the entry point I should set break point on?
Thanks.
The text was updated successfully, but these errors were encountered: