[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-10-27 Thread Jake Farrell (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13137045#comment-13137045
 ] 

Jake Farrell commented on THRIFT-1031:
--

What is the introduction of a new make tool for? can whatever is trying to be 
accomplished not be achieved with autotools currently?

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: PosixThreadFactory.patch, thrift_msvc.patch, 
 thrift_msvc_v0_1.patch, thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, 
 thrift_msvc_v0_4.patch, thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, 
 thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-10-11 Thread James Dickson (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13124887#comment-13124887
 ] 

James Dickson commented on THRIFT-1031:
---

I have only supplied 2010 projects as this is the only system we use at work. I 
can't really spend the required time to fully support older versions. However, 
having said that, I have recently come across this project: 
http://industriousone.com/premake which is similar to cmake in some ways, but I 
feel is better and would enable multiple project support if we switched to it.

Let me know what you all think.

James

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: PosixThreadFactory.patch, thrift_msvc.patch, 
 thrift_msvc_v0_1.patch, thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, 
 thrift_msvc_v0_4.patch, thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, 
 thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-10-01 Thread Jens Geyer (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118843#comment-13118843
 ] 

Jens Geyer commented on THRIFT-1031:


The Thrift compiler project is still VC2010 only?

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: PosixThreadFactory.patch, thrift_msvc.patch, 
 thrift_msvc_v0_1.patch, thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, 
 thrift_msvc_v0_4.patch, thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, 
 thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-30 Thread Peace (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118208#comment-13118208
 ] 

Peace commented on THRIFT-1031:
---

Terrific work gents! I'm very glad to see James' and Alexandre's patches 
merged.  Adding MSVC support will really speed up Thrift adoption.

I'm able to build and run a Windows sample project that I've created based on 
Alexandre's sample in his fork over on github. There is one issue when running 
against the trunk. Using a ThreadManager causes an exception in 
PosixThreadFactory.cpp (pthread_attr_setschedpolicy @ line 121).

Here's a code snippit:

   boost::shared_ptrTProtocolFactory protocolFactory(new 
TBinaryProtocolFactory());
   boost::shared_ptrMyHandler handler(new MyHandler());
   boost::shared_ptrTProcessor processor(new MyProcessor(handler));

   boost::shared_ptr threadManager = 
ThreadManager::newSimpleThreadManager(NumThreads);
   boost::shared_ptr threadFactory = boost::shared_ptr (new 
PosixThreadFactory());
   threadManager-threadFactory(threadFactory);
   threadManager-start(); // -- exception here

   TNonblockingServer server(processor, protocolFactory, Port, threadManager);
   server.serve();

The exception occurs within the threadManager-start() call. This worked with 
Alexandre's fork but I haven't been able to determine why it's failing with the 
newly merged code in the trunk (SVN 1177082). Am I doing something wrong or 
does the current thrift code not support using ThreadManager this way?

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-30 Thread alexandre parenteau (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118213#comment-13118213
 ] 

alexandre parenteau commented on THRIFT-1031:
-

@Peace: I think this is missing inside the trunk:

{code}
 #ifdef _WIN32
 //WIN32 Pthread implementation doesn't seem to support sheduling policies 
 other then PosixThreadFactory::OTHER - runtime error
 policy_ = PosixThreadFactory::OTHER;
#endif
if (pthread_attr_setschedpolicy(thread_attr, policy_) != 0) {
{code}

This is the only difference I notice between the trunk and my fork, and it 
seems to be consistent with your problem description.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-30 Thread Peace (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118234#comment-13118234
 ] 

Peace commented on THRIFT-1031:
---

@alexandre: Yes that fixes the threading exception. Thank you!

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-30 Thread Roger Meier (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118395#comment-13118395
 ] 

Roger Meier commented on THRIFT-1031:
-

Thanks Peace! committed.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: PosixThreadFactory.patch, thrift_msvc.patch, 
 thrift_msvc_v0_1.patch, thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, 
 thrift_msvc_v0_4.patch, thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, 
 thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-30 Thread Hudson (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13118619#comment-13118619
 ] 

Hudson commented on THRIFT-1031:


Integrated in Thrift #287 (See [https://builds.apache.org/job/Thrift/287/])
THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0
Patch: Peace

roger : http://svn.apache.org/viewvc/?view=revrev=1177817
Files : 
* /thrift/trunk/lib/cpp/src/concurrency/PosixThreadFactory.cpp


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: PosixThreadFactory.patch, thrift_msvc.patch, 
 thrift_msvc_v0_1.patch, thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, 
 thrift_msvc_v0_4.patch, thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, 
 thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-26 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13114597#comment-13114597
 ] 

James Dickson commented on THRIFT-1031:
---

@alexandre: I will add that change back, I forgot to after testing it on XP. As 
regards the POSIX and 64bit issue I came across this: 
http://locklessinc.com/articles/pthreads_on_windows/ The implementation seems 
quite good and wondered what your thoughts were? It has a licence that I 
believe would be compatible.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-26 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13114788#comment-13114788
 ] 

alexandre parenteau commented on THRIFT-1031:
-

@james: thanks for the link, it looks very nice! Unfortunately it does not 
compile with Thrift at the moment, I wrote a comment on the page.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-25 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13114407#comment-13114407
 ] 

alexandre parenteau commented on THRIFT-1031:
-

For the problem of a WIN64 port, as well as the pthread_win32 license, I 
submitted a patch to replace pthread_win32 by boost: THRIFT-1361

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-24 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13114080#comment-13114080
 ] 

alexandre parenteau commented on THRIFT-1031:
-

@james: another cosmetic change: wouldn't be better to use WSAPoll on = Vista?

{code}
#if WINVER = 0x0502
#define poll(fds, nfds, timeout) \
poll_win32(fds, nfds, timeout)
...
#else
#   define poll(fds, nfds, timeout) \
WSAPoll(fds, nfds, timeout)
#endif // WINVER
{code}

This is based on one the original windows port attempts, I updated it to match 
your latest version.


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-23 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13113289#comment-13113289
 ] 

James Dickson commented on THRIFT-1031:
---

New version added - 0_7.
@alexandre: 1-7 done. Please see the changes in 0_7.

Also a couple of bug fixes with the non-blocking path. On windows the connect 
method returns EWOULDBLOCK instead of EINPROGRESS when non blocking is set on 
the socket.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-23 Thread JIRA

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13113391#comment-13113391
 ] 

Aurélien Revol commented on THRIFT-1031:


Hi all,

Thanks for the Windows port, it's great work! My last obstacle to using it, 
though, is that I have to build it in *VC++ 9.0*; unfortunately, starting from 
??thrift_msvc_v0_2.patch??, the project files are *VC++ 10.0 only*. Is this a 
deliberate and necessary choice, or is there a way for me to undo this?

Another question: a port to MinGW/MSYS would be great, since the rest of the 
project is based on the autotools, and we have native Win32 code here. Do you 
think these patches would be compatible with gcc? How much effort would be 
needed to integrate them in the autotools scripts?

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-23 Thread Roger Meier (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13113474#comment-13113474
 ] 

Roger Meier commented on THRIFT-1031:
-

Thanks! just committed patch 0_7

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13113491#comment-13113491
 ] 

Hudson commented on THRIFT-1031:


Integrated in Thrift #275 (See [https://builds.apache.org/job/Thrift/275/])
THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0
= some more improvements

Patch: James Dickson

roger : http://svn.apache.org/viewvc/?view=revrev=1174801
Files : 
* /thrift/trunk/compiler/cpp/compiler.sln
* /thrift/trunk/compiler/cpp/compiler.vcxproj
* /thrift/trunk/compiler/cpp/compiler.vcxproj.filters
* /thrift/trunk/lib/cpp/libthrift.vcxproj
* /thrift/trunk/lib/cpp/src/Thrift.h
* /thrift/trunk/lib/cpp/src/transport/TSocket.cpp
* /thrift/trunk/lib/cpp/src/windows/TargetVersion.h
* /thrift/trunk/lib/cpp/src/windows/config.h
* /thrift/trunk/lib/cpp/src/windows/force_inc.h


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch, thrift_msvc_v0_7.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-22 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13113043#comment-13113043
 ] 

alexandre parenteau commented on THRIFT-1031:
-

Hi, thanks all for making this happen!

I had a chance finally to compile/run it (using the Calculator), and here are 
my comments/questions for @James:

1- overall definitively this looks good: I guess there is no WIN64 target, 
because there is no pthread for WIN64?

2- Cosmetic: something needs to define #define HAVE_GETTIMEOFDAY 
(windows/config.h?)

3- Cosmetic: #define __BYTE_ORDER: this is not necessary anymore, another patch 
of mine previously fixed the auto detection on win32 using boost. The README 
may also reflect that (double should be fine).

4- Cosmetic: typedef __kernel_size_t  size_t, typedef __kernel_ssize_t ssize_t: 
I found this easier version: typedef  ptrdiff_t   ssize_t; (don't think size_t 
needs to be defined AFAIK)

5- Cosmetic: #define NOMINMAX (before Windows.h, because std::min is used in 
thrift)

6- Cosmetic warning: #pragma warning(disable: 4996) and #pragma 
warning(disable: 4250) could be nice (POSIX name for this item is deprecated, 
inherits via dominance)

7- config.h: here is my biggest concern: you decided (honorably!) to re-use 
config.h (and define HAVE_CONFIG_H): I find it in practice annoying because it 
assumes config.h is at the same level of Thrift.h. This forces in turn to 
add thrift folder/windows to the include path. What happens is when mixing 
with other libraries who also use config.h, it may take precedence over 
thrift's config.h. Ideally, I would prefer if *not* using HAVE_CONFIG_H, and do 
something like this instead:

#ifdef _WIN32
#include windows/config.h
$endif

When included from Thrift.h, this guarantees to pick the right config.h (and 
not Python's one for example).

Now what happens for the source code .cpp? Well since you are using already 
force-compilation, you could add windows/config.h to the list for forced 
headers.

Again, thanks a lot for the patch!


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-16 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13105952#comment-13105952
 ] 

James Dickson commented on THRIFT-1031:
---

@alexandre

Thank you for your comments, I mostly agree, however to make some further 
points:

PosixThreadFactory  TNonblockingServer - I will take a look at what you have 
and integrate those today (16th Sept).

TSocket:

I have taken a look at what you have, and whilst it is indeed minimal, the main 
reason for re-implementing it for Windows was in response to David's proposal 
of creating TAprSocket, except I wasn't really a fan of using APR as it is yet 
another dependency to include. By using #'defs as you have done I kind of feel 
it is going down the route of trying to fit a square peg into a round hole 
(maybe I am being pedantic!).

I think so long as the windows implementation of the TSocket interface fulfills 
the obligations and behavior of that interface then my preference would be to 
have an all windows implementation. Whilst what I have currently is merely a 
duplication with the non windows code ported over, eventually I would like to 
implement an entire windows version.

Errno:
Note that a windows specific implementation would also fix the errno issue as 
it would be possible to use WSAGetLastError directly as well as the windows 
error codes without the special care currently required in your version.

I have also taken a look at your implementation of fcntl and it doesn't seem 
to follow the specification here, mainly throwing an integer value of -99 isn't 
specified: http://pubs.opengroup.org/onlinepubs/009695399/functions/fcntl.html

I'd really like this patch to be integrated into the main trunk, so if there is 
anything more I can do to make this happen please let me know. 

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-16 Thread Roger Meier (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13106018#comment-13106018
 ] 

Roger Meier commented on THRIFT-1031:
-

Just comitted the first portion of your patch related to the compiler!

I would prefer the TSocket aproach from alexandre, he made good progress on 
making it more portable.
There are just a few #ifdef's and it will be much easier to manage the code 
base with one implementation.

I'm looking forward to bring this into the next release!



 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-16 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13106025#comment-13106025
 ] 

Hudson commented on THRIFT-1031:


Integrated in Thrift #265 (See [https://builds.apache.org/job/Thrift/265/])
THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0 (partial)
no chmod on windows for go and py compiler
Patch: James Dickson

roger : http://svn.apache.org/viewvc/?view=revrev=1171520
Files : 
* /thrift/trunk/compiler/cpp/src/generate/t_go_generator.cc
* /thrift/trunk/compiler/cpp/src/generate/t_py_generator.cc


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-16 Thread Roger Meier (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13106809#comment-13106809
 ] 

Roger Meier commented on THRIFT-1031:
-

0_6 is committed!
Thank you James, Alexandre and all other contributors to make this happen!!

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-16 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13106835#comment-13106835
 ] 

Hudson commented on THRIFT-1031:


Integrated in Thrift #266 (See [https://builds.apache.org/job/Thrift/266/])
THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0
Patch: James Dickson and Alexandre Parenteau

roger : http://svn.apache.org/viewvc/?view=revrev=1171777
Files : 
* /thrift/trunk/compiler/cpp/src/windows
* /thrift/trunk/compiler/cpp/src/windows/config.h
* /thrift/trunk/compiler/cpp/src/windows/version.h
* /thrift/trunk/lib/cpp/README_WINDOWS
* /thrift/trunk/lib/cpp/libthrift.vcxproj
* /thrift/trunk/lib/cpp/libthrift.vcxproj.filters
* /thrift/trunk/lib/cpp/libthriftnb.vcxproj
* /thrift/trunk/lib/cpp/libthriftnb.vcxproj.filters
* /thrift/trunk/lib/cpp/src/concurrency/PosixThreadFactory.cpp
* /thrift/trunk/lib/cpp/src/server/TNonblockingServer.h
* /thrift/trunk/lib/cpp/src/transport/TServerSocket.cpp
* /thrift/trunk/lib/cpp/src/transport/TSocket.cpp
* /thrift/trunk/lib/cpp/src/windows
* /thrift/trunk/lib/cpp/src/windows/Fcntl.cpp
* /thrift/trunk/lib/cpp/src/windows/Fcntl.h
* /thrift/trunk/lib/cpp/src/windows/GetTimeOfDay.cpp
* /thrift/trunk/lib/cpp/src/windows/GetTimeOfDay.h
* /thrift/trunk/lib/cpp/src/windows/Operators.h
* /thrift/trunk/lib/cpp/src/windows/SocketPair.cpp
* /thrift/trunk/lib/cpp/src/windows/SocketPair.h
* /thrift/trunk/lib/cpp/src/windows/StdAfx.cpp
* /thrift/trunk/lib/cpp/src/windows/StdAfx.h
* /thrift/trunk/lib/cpp/src/windows/TWinsockSingleton.cpp
* /thrift/trunk/lib/cpp/src/windows/TWinsockSingleton.h
* /thrift/trunk/lib/cpp/src/windows/TargetVersion.h
* /thrift/trunk/lib/cpp/src/windows/config.h
* /thrift/trunk/lib/cpp/src/windows/force_inc.h
* /thrift/trunk/lib/cpp/src/windows/tr1
* /thrift/trunk/lib/cpp/src/windows/tr1/functional
* /thrift/trunk/lib/cpp/thrift.sln


 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Assignee: Roger Meier
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch, thrift_msvc_v0_6.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-15 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13105746#comment-13105746
 ] 

alexandre parenteau commented on THRIFT-1031:
-

@James: I reviewed the patch, and have those remarks to share:

Overall:


Pros:
- This is a nice improvement to have a 0.8 patch for Windows
- Almost everything in thrift is ported (however see also Cons)
- IMHO this could be *the* base patch for the upcoming Windows support inside 
thrift

Cons:
- the server part is missing (as you mentioned), and/or especially async 
servers is incomplete (libevent and pthread based, very important for 
high-performance thrift serving)
- the new socket-windows-only code is troubling to me (see below for more 
details, and possible alternatives)
- it lacks a 64 bits target (should be trivial to add)

Details:


Those observations come mostly from my own experiment of maintaining a Windows 
port: see 
https://github.com/aubonbeurre/thrift/blob/winthriftnb-0.8.x-1/README.non.blocking.Windows

My focus has been on supporting async server/client, so in a way I feel it is 
very complimentary to this patch.

I was hoping you could review my observations, and see if somehow you could 
blend the two together!

TSocket:

- It is not immediately obvious to me why creating a different socket class for 
Windows is necessary. On the github link above, TSocket has only a couple of 
minor changes, and run/compile fine on Windows.
- HOWEVER: Much more importantly, I don't think it will work for multi-thread 
servers to use errno (see 
http://msdn.microsoft.com/en-us/library/ms737828(v=vs.85).aspx and 
http://msdn.microsoft.com/en-us/library/windows/apps/ms737828(v=vs.85).aspx)
- My own approach was to re-define errno to WSAGetLastError (only internally to 
thrift), and all the errno.h codes: It works as long as errno is not getting 
used inside any thrift .h (or it would force clients linking against thrift to 
do the same).
- So taking together those approaches (slight changes to the existing TSocket, 
and override of errno) seem better to me, even if they require special 
attention to never use errno inside .h. Also errors getting thrown by thrift 
have now the WinSock error codes, and it works in multiple threads (like the 
pool thread).


lib\cpp\src\concurrency\PosixThreadFactory.cpp:

- In the port mentioned above, you'll find the minor tweaks to have it compile 
and run on Windows (it was taken from another JIRA patch, perhaps even this 
one!)

lib\cpp\src\server\TNonblockingServer.cpp:

Lately Roger integrated a set of patches of mine which make the compilation on 
Windows happen without any changes. However see in the code above the file 
win32-config.h, which defines SOCKOPT_CAST_T and AF_LOCAL to make this work.

TWinsockSingleton:

- I'm not sure this is necessary to have thrift initialize WinSock (especially 
since libevent might already do this, dunno). I choose to make it a 
documentation point.

Thanks, I feel overall the windows port is getting closer and closer.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information 

[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-14 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13104552#comment-13104552
 ] 

James Dickson commented on THRIFT-1031:
---

Attached a new version (0_5) with some bug fixes that I have encountered during 
testing today.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_3.patch, thrift_msvc_v0_4.patch, 
 thrift_msvc_v0_5.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-13 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13103736#comment-13103736
 ] 

James Dickson commented on THRIFT-1031:
---

Hi all,

Please accept my apologies for the long radio silence, other tasks have 
somewhat occupied my time lately.

However, over the past week I have been working on a newer version of the 
patch, one which I hope addresses all concerns and requests. I greatly 
appreciate all the feedback you have given me.

This patch leaves the original code base completely unchanged. Where classes 
are completely incompatible with windows I have rewritten the incompatible 
parts and branched the implementation thus maintaining the same interface. It 
is not complete, there are still some Transport classes needing to still be 
ported, but the majority has been.

I have also ported the compiler to compile under MSVC, as far as I can tell it 
works in it's entirety, however I would really appreciate testing of the 
various other languages as I have mainly concentrated on the C++ side of code 
generation. I have only given a cursory run of the other language generators.

As to why I ported the compiler, this is so I can generate the testing code so 
that I can port all the test cases and make sure the library is equal to it's 
linux counterpart.

From the readme:

{quote}
Using Thrift with C++
=

You need to define an enviroment variable called THIRD_PARTY. The project
assumes that you have extracted the dependancies into their default structure
into the path defined by THIRD_PARTY.

e.g. $(THIRD_PARTY)/boost/boost_1_47_0/

Thrift is divided into two libraries.

libthrift
  The core Thrift library contains all the core Thrift code. It requires
  boost shared pointers and pthreads_win32.

libthriftnb
  This library contains the Thrift nonblocking server, which uses libevent.
  To link this library you will also need to link libevent.

You MUST apply this patch to make generated code compile.
https://issues.apache.org/jira/browse/THRIFT-1139

Linking Against Thrift
==

You need to link your project that uses thrift against all the thrift
dependancies; in the case of libthrift, pthreads_win32, boost and for
libthriftnb, libevent.

In the project properties you must also set HAVE_CONFIG_H as force include
the config header: windows/confg.h

Dependencies


boost shared pointers
http://www.boost.org/libs/smart_ptr/smart_ptr.htm

libevent (for libthriftnb only)
http://monkey.org/~provos/libevent/

pthreads win32
http://sources.redhat.com/pthreads-win32/

Known issues


- Endianess has not been fully tested, may not work with doubles.
- Currently does not support the non-blocking connect path.
- Only supports the creation of clients, server sockets are not yet ported.
- Does not support named pipes. (Supported in unix through unix domain sockets).

TODO


- Port remaining classes in libthrift:
- PosixThreadFactory
- TFDTransport
- TFileTransport
- THttpClient
- THttpServer
- TSimpleFileTransport
- TSSLSocket
- TServerSocket

- Port remaing classes in libthriftnb:
- TNonblockingServer

- Port test cases. (Not even started this. Run test cases in release mode?)

- Autolink libraries depending on debug\release build.

- Auto versioning.
{quote}

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_2.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we 

[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-09-13 Thread Jake Farrell (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13103835#comment-13103835
 ] 

Jake Farrell commented on THRIFT-1031:
--

The introduction of the duplicate set of t_*_generators in the v0_2 patch just 
add the potential for patches to be missed when new bugs arise within the 
generators. This functionality should be added into the current generators as 
an option flag to modify the resulted generator output where necessary. If I 
misunderstood your comments and this is just for debugging and will not be in 
the final patch can you please provide it as a separate patch noted as just for 
debug.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch, 
 thrift_msvc_v0_2.patch, thrift_msvc_v0_2.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-08-15 Thread Deepak Muley (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13084977#comment-13084977
 ] 

Deepak Muley commented on THRIFT-1031:
--

Carl, Did you get any answer (privately) to your LGPL license related question, 
am curious to know the answer as well. 

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.8

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-06-21 Thread alexandre parenteau (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13052395#comment-13052395
 ] 

alexandre parenteau commented on THRIFT-1031:
-

I have created a fork of latest thrift 0.6.1 on github, which comprises part of 
this patch, and also uses THRIFT-923 (non-blocking server with libevent). If 
interested, please refer to 
https://github.com/aubonbeurre/thrift/blob/alex-0.6.1/README.non.blocking.Windows.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-05-19 Thread Carl Steinbach (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13036628#comment-13036628
 ] 

Carl Steinbach commented on THRIFT-1031:


This patch depends on pthreads_win32 library which carries an LGPL license. The 
[ASF License FAQ|http://www.apache.org/legal/resolved.html#category-a] lists 
the LGPL in the prohibited category, though it's unclear to me if this 
prohibition is limited to creating a derivative work from LGPL'd code, or if it 
also applies to runtime dependencies against standalone LGPL libraries. Does 
anyone know the answer?

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-04-20 Thread Deepak Muley (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13022542#comment-13022542
 ] 

Deepak Muley commented on THRIFT-1031:
--

@Dragan Okiljevic 
Thank you. 

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-04-09 Thread Dragan Okiljevic (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13017939#comment-13017939
 ] 

Dragan Okiljevic commented on THRIFT-1031:
--

@Xavier

I got the same problem while trying to compile Thrift generated C++ code for 
enums using Visual Studio 2010. The map is supposed to be initialized using two 
iterator arguments (first, and last), so it will containt key/value pairs for 
each enumeration value.

Quick  dirty solution:
Last time I inspected the code, it seemed that this map is not used, so my code 
worked when I simply removed it from generated code by commenting it from 
Thrift generated files.

I'm not sure why MSVC doesn't recognize TEnumIterator as an iterator type. This 
class overrides '*' operator and returns std::pairint, const char * which 
seems to work on *nix, but not MSVC. Am I right?

Anyway, there is many ways to populate std::map either during initialization or 
later, so I guess there is one both compatible with MSVC and *nix and MAC 
compilers.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-04-06 Thread Deepak Muley (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13016526#comment-13016526
 ] 

Deepak Muley commented on THRIFT-1031:
--

Thanks a lot James for starting this patch. 

I also reviewed the makefile project (namke) based patch in THRIFT-591 but I  
preferred your way of doing it without makefiles.

I downloaded your patch and works great for creating libthrift.lib. looking 
forward to have this patch make it to the next release.  

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-04-06 Thread Roger Meier (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13016559#comment-13016559
 ] 

Roger Meier commented on THRIFT-1031:
-

David's approach, creating a TAprSocket and TAprServerSocket seems to be a good 
solution with *minimal changes* to the existing implementation and that's a 
good thing!

The template approach is a good solution for all these Socket variants we have. 
I think it is worth to have that refactoring task as a dedicated issue within 
jira.

However, I suggest to implement a TAprSocket and TAprServerSocket and do the 
template stuff later.



 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-04-01 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13014478#comment-13014478
 ] 

James Dickson commented on THRIFT-1031:
---

Thank you for the quick feedback.

@Roger + David: I agree that the extra dependency is not ideal, especially as 
such a small part of it is used. The alternative I see would be to simply use 
Winsock2 on Windows as the previous patch did. If that would be the way to go 
then incorporating previous comments, changes to the previous patch would need 
to be:

1. Create a platform.h header, which on *nix machines includes config.h 
(generated by ./configure) and header files which are not found on Windows. 
This new header would be used in code where config.h had been included 
directly previously. (This is based on Roger's comment on 29/Mar/11 19:10, 
THRIFT-1123 part a.)

2. (1.) Would not fix situations in which *nix only headers have been included 
in a file. Replacing these headers with platform.h would pull in headers that 
file would not require, which has been a point of contention previously. 
However, if this is the only work around then maybe it is acceptable?

@Roger: As regards part b. of your comment in THRIFT-1123 on 29/Mar/11 19:10, I 
like that solution and will make the change.

@Roger: As regards part c. of your comment in THRIFT-1123 on 29/Mar/11 19:10, 
it is a yes and no answer. Yes in that the Winsock2 equivalent of those 
functions are named completely differently. For instance fcntl(...) becomes 
ioctlsocket(...). However, as far as requiring them to be macros then no. Maybe 
an alternative is to make TSocket a template class where one of the template 
parameters is an OS socket layer policy. This would mean the implementation of 
low level socket routines could exist in platform specific folders (along with 
gettimeofday(...) on Windows) and leave the TSocket class almost the same.

Just to avoid any confusion in the above statement, TSocket would become:

{code}

template class SOCKET_POLICY 
class TSocket : public TVirtualTransportTSocket, private SOCKET_POLICY {

...

}

Where SOCKET_POLICY implements the following:

close(...)
usleep(...)
poll(...)
reset(...)
blocking(...)
non_blocking(...)

{code}

If people are happy with the proposal I will start those changes, but would 
appreciate any comments before hand.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-03-31 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13014058#comment-13014058
 ] 

James Dickson commented on THRIFT-1031:
---

All,

Thank you once again for all the comments both in this issue and in 
[THRIFT-1123|https://issues.apache.org/jira/browse/THRIFT-1123]. It has really 
helped me.

I have attached a new patch which is what I currently have as regards combining 
all the comments, however it is by no means complete - it just compiles the 
client side code at the moment. I have posted it mainly for a (hopefully) quick 
code review to make sure I am not going down the wrong path.

To outline the changes:

- Platform specifics have been removed and replaced by using the Apache 
Portable Runtime (APR) v1.4.2
- Config.h has been renamed to win32_config.h and been moved into 
build_windows/msvc##/ where ## is the compiler version.
- By using APR very few headers are now included in this new config header, 
just enough to ensure POSIX types are available.
- Tests for client, concurrency, realloc and server have been added, but do not 
yet compile. (Work in progress)

To reply to some comments:

@Christian Lavoie: {quote}why did you put (std::min) in parentheses in 
TBufferTransports.cpp ?{quote}

This is because somewhere in a windows header (can't remember which one) min 
and max have been defined as macros and as far as I am aware cannot be turned 
off. The parentheses make sure the STL min\max versions get chosen instead. A 
pain I know! 

@Dragan Okiljevic: Thank you for working on the server side of things, I really 
appreciate it. However, in switching to using APR I have probably broken your 
changes. After I have finished the client side of things, I will endeavor to 
fix the server side for you.

Again, thank you for any comments and feedback.
James

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-03-31 Thread Dragan Okiljevic (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13014147#comment-13014147
 ] 

Dragan Okiljevic commented on THRIFT-1031:
--

Christian and Roger, thank you for your feedback. The comments, advices and 
propositions you gave are really of big help.

James, it's great to see the improved version of your patch. As for the server 
side, thank you for your intention to fix it in a fashion applied in your new 
patch, if I can be of any help, I encourage you to contact me at any time.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch, thrift_msvc_v0_1.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-03-28 Thread Dragan Okiljevic (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13012307#comment-13012307
 ] 

Dragan Okiljevic commented on THRIFT-1031:
--

Working on my project I needed to create Thrift clients and servers both in C++ 
and Java, and to have C++ interoperability on Windows and *NIX platforms.

I found a great deal of help in this patch by Mr. Dickson's and I extended it 
with server functionality.

The result is published as THRIFT-1123.

I express my gratitude to Mr. Dickson and I am looking forward for any comments.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] Commented: (THRIFT-1031) Patch to compile Thrift for vc++ 9.0 and 10.0

2011-02-21 Thread James Dickson (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12997351#comment-12997351
 ] 

James Dickson commented on THRIFT-1031:
---

Thank you for the feedback, it is greatly appreciated.

I will look into making those changes and try to get a new patch submitted as 
soon as possible.

 Patch to compile Thrift for vc++ 9.0 and 10.0
 -

 Key: THRIFT-1031
 URL: https://issues.apache.org/jira/browse/THRIFT-1031
 Project: Thrift
  Issue Type: Improvement
  Components: C++ - Library
 Environment: Windows XP 32bit, vc++ 9.0, 10.0
Reporter: James Dickson
Priority: Trivial
 Fix For: 0.7

 Attachments: thrift_msvc.patch


 At our company we need clients running on Windows being able to connect to 
 our linux servers running hypertable. The attached patch enables the parts 
 needed by Hypertable to be compiled on Windows using either the VC++ 9.0 or 
 10.0 compilers.
 Having read previous posts about ports using boost::asio we found these to be 
 too intrusive for our needs. This version uses pthreads_win32 and winsock2 
 and is as designed to be as un-intrusive as is possible to the original unix 
 code base. It is mostly #defines between unix sockets and winsock2 sockets. 
 We also tried to follow the folder structuring of the C# runtime that has 
 visual studio solutions to be consistent.
 More details are in the README as not all the functionality of the original 
 unix code base is available to windows users. We will add the missing 
 functionality, we just wanted to share what we had as for a Windows based 
 client for us it is sufficient.
 The patch is based on the latest revision in SVN, we would love feedback and 
 any code reviews. If there is any possibility of this being added to the main 
 trunk then that would be much appreciated, however we don't expect that.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira