[jira] [Created] (THRIFT-1246) Improve logging: Change TNonblockingServer internalRead to trace from warn

2011-07-28 Thread Vijay (JIRA)
Improve logging: Change TNonblockingServer internalRead to trace from warn
--

 Key: THRIFT-1246
 URL: https://issues.apache.org/jira/browse/THRIFT-1246
 Project: Thrift
  Issue Type: Improvement
  Components: Java - Library
Affects Versions: 0.7
 Environment: JVM
Reporter: Vijay
 Fix For: 0.7


In the actual world we will have a lot of connection resets hence it will be 
better to log those messages as trace than logging as errors and warnings.
Or we can make this logging configurable. Let me know thanks!

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




[jira] [Updated] (THRIFT-1246) Improve logging: Change TNonblockingServer internalRead to trace from warn

2011-07-28 Thread Vijay (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vijay updated THRIFT-1246:
--

Priority: Trivial  (was: Major)

> Improve logging: Change TNonblockingServer internalRead to trace from warn
> --
>
> Key: THRIFT-1246
> URL: https://issues.apache.org/jira/browse/THRIFT-1246
> Project: Thrift
>  Issue Type: Improvement
>  Components: Java - Library
>Affects Versions: 0.7
> Environment: JVM
>Reporter: Vijay
>Priority: Trivial
> Fix For: 0.7
>
>
> In the actual world we will have a lot of connection resets hence it will be 
> better to log those messages as trace than logging as errors and warnings.
> Or we can make this logging configurable. Let me know thanks!

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




[jira] [Closed] (THRIFT-1233) Remove unused include in generated C++ code

2011-07-28 Thread Jake Farrell (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jake Farrell closed THRIFT-1233.



> Remove unused include in generated C++ code
> ---
>
> Key: THRIFT-1233
> URL: https://issues.apache.org/jira/browse/THRIFT-1233
> Project: Thrift
>  Issue Type: Improvement
>  Components: C++ - Compiler
> Environment: Ubuntu 11.04, latest trunk.
>Reporter: Diwaker Gupta
>Assignee: alexandre parenteau
>Priority: Trivial
> Fix For: 0.7
>
> Attachments: THRIFT-1233.patch, thrift-1233.2.tgz
>
>
> When using cob_style with the CPP generator, the compiler adds an include for 
> TTransportUtils. This include doesn't seem to be used anywhere and creates an 
> unnecessary dependency. It also complicates compiling Thrift generated code 
> on other platforms.
> Patch available for review here:
> https://reviews.apache.org/r/1034/

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




[jira] [Resolved] (THRIFT-1233) Remove unused include in generated C++ code

2011-07-28 Thread Roger Meier (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roger Meier resolved THRIFT-1233.
-

Resolution: Fixed
  Assignee: alexandre parenteau  (was: Jake Farrell)

reproduced Alexandre's issue and added the proposed include:

#include 

> Remove unused include in generated C++ code
> ---
>
> Key: THRIFT-1233
> URL: https://issues.apache.org/jira/browse/THRIFT-1233
> Project: Thrift
>  Issue Type: Improvement
>  Components: C++ - Compiler
> Environment: Ubuntu 11.04, latest trunk.
>Reporter: Diwaker Gupta
>Assignee: alexandre parenteau
>Priority: Trivial
> Fix For: 0.7
>
> Attachments: THRIFT-1233.patch, thrift-1233.2.tgz
>
>
> When using cob_style with the CPP generator, the compiler adds an include for 
> TTransportUtils. This include doesn't seem to be used anywhere and creates an 
> unnecessary dependency. It also complicates compiling Thrift generated code 
> on other platforms.
> Patch available for review here:
> https://reviews.apache.org/r/1034/

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




[jira] [Resolved] (THRIFT-1245) C# JSON Protocol uses culture-dependant decimal separator for double

2011-07-28 Thread Roger Meier (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1245?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roger Meier resolved THRIFT-1245.
-

Resolution: Fixed

Thanks Nacim, committed your patch!



> C# JSON Protocol uses culture-dependant decimal separator for double
> 
>
> Key: THRIFT-1245
> URL: https://issues.apache.org/jira/browse/THRIFT-1245
> Project: Thrift
>  Issue Type: Bug
>  Components: C# - Library
>Affects Versions: 0.6.1
> Environment: C#, Windows 7, VS2008
>Reporter: Nacim Rahal
> Attachments: thrift-1245.patch
>
>
> C# JSON protocol uses the current culture to read and write doubles, so the 
> decimal separator is not always a dot. For instance, if the the current 
> culture is fr-FR, a comma is used as decimal separator thus resulting in 
> invalid JSON.

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




[jira] [Resolved] (THRIFT-1244) using 'using' to disambiguate between functions in different bases does not conform to C++ standard and will not compile on certain compilers

2011-07-28 Thread Roger Meier (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roger Meier resolved THRIFT-1244.
-

Resolution: Fixed

Thanks Anatoly, just committed your patch!

> using 'using' to disambiguate between functions in different bases does not 
> conform to C++ standard and will not compile on certain compilers
> -
>
> Key: THRIFT-1244
> URL: https://issues.apache.org/jira/browse/THRIFT-1244
> Project: Thrift
>  Issue Type: Bug
>  Components: C++ - Library
>Affects Versions: 0.6
>Reporter: Anatoly Fayngelerin
>Assignee: Anatoly Fayngelerin
>Priority: Minor
> Fix For: 0.7
>
> Attachments: 
> 0_7_0_dev_remove_ambiguous_using_tbufferedtransports.patch, 
> 0_7_0_dev_remove_ambiguous_using_tbufferedtransports.patch
>
>
> Currently in transport/TBufferTransports.h three classes have code of the form
> bq.using TBufferBase::readAll;
> This code is attempting to disambiguate between the readAll function provided 
> by TBufferBase and TVirtualTransport < T, TBufferBase >. This compile and 
> works under GCC. However, this does not conform to the C++ standard. Other 
> compilers(such as Comeau) will report compilation errors because of this 
> code. Here is a related bug filed with gcc: 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32039
> I am attaching a patch that explicitly declares readAll and implements it by 
> calling TBufferBase::readAll.

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




[jira] [Resolved] (THRIFT-1243) TAsyncChannel callbacks

2011-07-28 Thread Roger Meier (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-1243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roger Meier resolved THRIFT-1243.
-

Resolution: Fixed
  Assignee: alexandre parenteau

This makes sense, just committed your patch.

Thanks Alexandre

> TAsyncChannel callbacks
> ---
>
> Key: THRIFT-1243
> URL: https://issues.apache.org/jira/browse/THRIFT-1243
> Project: Thrift
>  Issue Type: Improvement
>  Components: C++ - Library
>Affects Versions: 0.7
> Environment: Visual C++ 2010
>Reporter: alexandre parenteau
>Assignee: alexandre parenteau
>Priority: Minor
>  Labels: patch
> Fix For: 0.8
>
> Attachments: THRIFT-1243.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> [Context: This patch is part of a larger patch to use thriftnb on 
> Windows/VisualC++. See 
> https://github.com/aubonbeurre/thrift/blob/alex-0.7.0/README.non.blocking.Windows
>  for more details.]
> When compiling using Visual C++ 2010, the compiler chokes on casting some 
> callbacks bool(*)() to void(*)().
> Although probably valid and supported by gcc, this is further complicated by 
> the fact those casting seem unnecessary: for each of the callbacks returning 
> bool in TAsyncChannel.h:
> 1. the returned value is never checked
> 2. they always return true
> Attached is a trivial patch based on 0.7.0, tested on Ubuntu 11.04 and Visual 
> C++ 2010.

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




Re: Re: AW: undefined references to VERSION_MASK and VERSION_1

2011-07-28 Thread Matthieu Imbert

On 01/-10/-28163 08:59 PM, Gautam Thaker wrote:

On 7/2/2011 4:56 AM, Roger Meier wrote:

Hi Gautam

I cannot reproduce that isse on my Debian Squeeze using  g++ 4.4.5.
What happens when you add a -Wall compile flag to the Makefile ?



I have confirmed that gcc-4.6.0 and the latest gcc-4.6.1 have this
problem. Also, I built gcc-4.5.3, it DOES NOT have any problems.

As for using the "-Wall" flag, i have copied the output below  - it
shows some warning but nothing related to UNDEFs for VERSION_1 and
VERSION_MASK.

I suspect some new C++ standard rule must be in gcc-4.6.x series and
this may lead to name space issues. But I don't know the thrift stuff
well enough to quite figure this out in limited time I have spent on it.

Gautam


Hi Gautam and all,

I have the same issue: when compiling a thrift client with g++ 4.6.1 
(debian testing) and the latest thrift from the subversion, i get 
messages about undefined references to VERSION_1 and VERSION_MASK


For example:

/usr/local/include/thrift/protocol/TBinaryProtocol.tcc:35: undefined 
reference to 
`apache::thrift::protocol::TBinaryProtocolT::VERSION_1'


I know this particular client was compiling correctly 1 year ago (with a 
different gcc and thrift version).


But isn't it normal that the linker complains? since VERSION_1 and 
VERSION_MASK are *declared* in TBinaryProtocol.h, but never *defined*. 
I'm far from being a c++ expert, but i think that even if you're allowed 
to declare a static const integral value in a class header, you're still 
supposed to define it somewhere so that it exists in an object file?


as you cross-posted on both user and dev mailing list, i also cross-post 
my answer, not knowing where a discussion may start.


regards,

--
Matthieu


fc15-32>  g++ -Wall -o CppServer -I/home/gthaker/usr/include/thrift
-I/usr/include/boost  -I../gen-cpp -L/h>
../gen-cpp/Calculator.h: In member function 'virtual int32_t
tutorial::CalculatorMultiface::calculate(int32_t, const tutorial::Work&)':
../gen-cpp/Calculator.h:491:3: warning: control reaches end of non-void
function [-Wreturn-type]
../gen-cpp/Calculator.h: In member function 'virtual int32_t
tutorial::CalculatorMultiface::add(int32_t, int32_t)':
../gen-cpp/Calculator.h:480:3: warning: control reaches end of non-void
function [-Wreturn-type]
../gen-cpp/Calculator.h: In member function 'virtual int32_t
tutorial::CalculatorMultiface::calculate(int32_t, const tutorial::Work&)':
../gen-cpp/Calculator.h:491:3: warning: control reaches end of non-void
function [-Wreturn-type]
../gen-cpp/Calculator.h: In member function 'virtual int32_t
tutorial::CalculatorMultiface::add(int32_t, int32_t)':
../gen-cpp/Calculator.h:480:3: warning: control reaches end of non-void
function [-Wreturn-type]
/tmp/ccrEAa1g.o: In function
`apache::thrift::protocol::TBinaryProtocolT::writeMessageBegin(std::basic_string, std::allocator  >  const&,
apache::thrift::protocol::TMessageType, int)':
CppServer.cpp:(.text._ZN6apache6thrift8protocol16TBinaryProtocolTINS0_9transport10TTransportEE17writeMessageBeginERKSsNS1_12TMessageTypeEi[apache::thrift::protocol::TBinaryProtocolT::writeMessageBegin(std::basic_string, std::allocator  >  const&,
apache::thrift::protocol::TMessageType, int)]+0x15): undefined reference
to
`apache::thrift::protocol::TBinaryProtocolT::VERSION_1'
/tmp/ccrEAa1g.o: In function
`apache::thrift::protocol::TBinaryProtocolT::readMessageBegin(std::basic_string, std::allocator  >&,
apache::thrift::protocol::TMessageType&, int&)':
CppServer.cpp:(.text._ZN6apache6thrift8protocol16TBinaryProtocolTINS0_9transport10TTransportEE16readMessageBeginERSsRNS1_12TMessageTypeERi[apache::thrift::protocol::TBinaryProtocolT::readMessageBegin(std::basic_string, std::allocator  >&,
apache::thrift::protocol::TMessageType&, int&)]+0x33): undefined
reference to
`apache::thrift::protocol::TBinaryProtocolT::VERSION_MASK'
CppServer.cpp:(.text._ZN6apache6thrift8protocol16TBinaryProtocolTINS0_9transport10TTransportEE16readMessageBeginERSsRNS1_12TMessageTypeERi[apache::thrift::protocol::TBinaryProtocolT::readMessageBegin(std::basic_string, std::allocator  >&,
apache::thrift::protocol::TMessageType&, int&)]+0x3d): undefined
reference to
`apache::thrift::protocol::TBinaryProtocolT::VERSION_1'
collect2: ld returned 1 exit status


Regards
Roger


-Ursprüngliche Nachricht-
Von: Gautam Thaker [mailto:gautam.h.tha...@lmco.com]
Gesendet: Dienstag, 28. Juni 2011 21:15
An: dev@thrift.apache.org
Betreff: undefined references to VERSION_MASK and VERSION_1

When compiling the  "cpp" example in "tutorial", i get:

CppServer.o
  U


apache::thrift::protocol::TBinaryProtocolT
ort>::VERSION_MASK
  U


apache::thrift::protocol::TBinaryProtocolT
ort>::VERSION_1

I am running on Fedora 15 w/ GCC/G++ 4.6.0. The  ./configure and "make"
and "make install" had gone w/o errors (as far as I could tell.)

Any hints welcome. I tried to google this, but found nothing.

Gautam