Skip to content

Conversation

@hhakimi53
Copy link

Logic is based on latest C++ client from master and necessary files pulled in from windows branch. Following are updates in this changelist :

  • Updated Windows C++ client logic to use C++ exception instead of no-exception logic. With this logic for Windows C++ client will be much closer to master.
  • Removed boost header files from include directory of the C++ client as with the new C++ client build and link dependency can not be resolved by just boost header files only; boost libraries are needed for link operation. Instead there will be pre-requisite to install Boost on system similar that has been taken for C++ client on master.
  • VS project solution for 32 & 64 bit environment has been updated to reference Boost include and library based on boost environment variables. Details of defining boost environment variables has been captured in build.windows.md file.
  • Update to the client logic to use Windows or Linux/Posix specific calls depending on the platform.

Verified voter 32 and 64 bit example runs on Win 7 and Win 10.

@BillWhite
Copy link
Contributor

What kind of Linux and Mac testing did you do on this branch? Do we have a Jenkins job to test this? I don't think we do, but Ruth would know more.

I'm still looking at this.

@hhakimi53
Copy link
Author

hhakimi53 commented Jun 9, 2016

At present, the intend of this branch and the changes is not to run on Linux or Mac. As first step it's targetted to run on Windows platform. I will not merging it master at present but the changes may live on this branch or on origin/windows which already exists but is out-dated - last updated almost more than 2 years back.

When it goes to master (later?), it will operational on Linux.

@BillWhite
Copy link
Contributor

Ok. The pull request says you want to merge to master, which seems to be a mistake unless you have tested on Linux.

Most of the 321 file changes are in cppunit and other library functions. Is that true? I didn't review these. I only looked at the changes which seemed to be in VoltDB code. Those seemed to be right to me.

@hhakimi53
Copy link
Author

Thanks Bill for reviewing the changes. The pull request has been set-up against master so that it's easier to read the changes happening to master logic. The current branch as is can't go in master at present as this has not been tested to run on Linux.
Correct, lof of newly added files are cppunit ones (will be good to delete the sources of these at some point and just use the library and headers) and are third party sources which can be skipped. They are located in ./include/cppunit and zip files in ./third_party.

int64_t maxAllowedOutstanding;

#ifdef _MSC_VER
// this version may not be correct
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this not correct version?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this comment needs to be cleaned up. Earlier when had looked at it, it seemed incorrect as it does not take into account epoch time similar to gettimeofday(). But later after looking how this routine is used, taking into account epoch is not needed. Will clean up the comment. Thanks

@akhanzode
Copy link
Contributor

review done.

@hhakimi53
Copy link
Author

Thanks for the reviewing the changes. I have pushed changes on the review feedback along with clean-up of sources for libevent as it does seem to be needed for Windows C++ client - purpose based on the how project is structured, it looks like libraries are only needed. I have archieved the sources as it contains Windows project too in it so that in future, if needed, the new libraries can be generated.

hhakimi53 added 2 commits June 17, 2016 19:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants