[jira] [Commented] (THRIFT-4546) Thrift No Longer on ASF Git

2018-12-27 Thread Robert Lu (JIRA)


[ 
https://issues.apache.org/jira/browse/THRIFT-4546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16729696#comment-16729696
 ] 

Robert Lu commented on THRIFT-4546:
---

There are many "git-wip-us.apache.org" in the repository, and git-wip-us isn't 
available anymore.

So I opened [https://github.com/apache/thrift/pull/1651], to update them.

> Thrift No Longer on ASF Git
> ---
>
> Key: THRIFT-4546
> URL: https://issues.apache.org/jira/browse/THRIFT-4546
> Project: Thrift
>  Issue Type: Bug
>  Components: Website
>Reporter: Christopher Friedt
>Priority: Major
> Attachments: image-2018-04-06-19-03-57-993.png
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The git repo seems to have been hosed. !image-2018-04-06-19-03-57-993.png!



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4576) PHP: untracked dependency: composer

2018-06-06 Thread Robert Lu (JIRA)


[ 
https://issues.apache.org/jira/browse/THRIFT-4576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16504215#comment-16504215
 ] 

Robert Lu commented on THRIFT-4576:
---

[composer|https://getcomposer.org/] in php likes npm in node, or maven in java.
composer, npm, maven is guaranteed by system or user.

In conclusion, it's not a bug, I think.

> PHP: untracked dependency: composer
> ---
>
> Key: THRIFT-4576
> URL: https://issues.apache.org/jira/browse/THRIFT-4576
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
> Environment: PHP 7.1.14
>Reporter: Aki Sukegawa
>Priority: Minor
>
> {quote}Making all in php
> Making all in test
> composer install --working-dir=../../..
> make[4]: composer: No such file or directory
> {quote}
> A workaround is to install composer, obviously.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4498) add phpcs back

2018-02-22 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4498:
-

 Summary: add phpcs back
 Key: THRIFT-4498
 URL: https://issues.apache.org/jira/browse/THRIFT-4498
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Library
Reporter: Robert Lu
Assignee: Robert Lu


Can we use phpcs to check code for PSR-2?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4477) TBufferedTransport must have underlying transport

2018-01-29 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4477:
-

 Summary: TBufferedTransport must have underlying transport
 Key: THRIFT-4477
 URL: https://issues.apache.org/jira/browse/THRIFT-4477
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Affects Versions: 0.11.0
Reporter: Robert Lu
Assignee: Robert Lu


for TBufferedTransport,
the underlying transport cannot be null. many methods used underlying transport 
directly, if it's null, will cause error. And a null as underlying transport 
for TBufferedTransport makes no sense.

So, TBufferedTransport must have underlying transport



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4475) lib/php/test should be checked for PSR-2

2018-01-25 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4475:
-

 Summary: lib/php/test should be checked for PSR-2
 Key: THRIFT-4475
 URL: https://issues.apache.org/jira/browse/THRIFT-4475
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Library
Affects Versions: 0.11.0
Reporter: Robert Lu
Assignee: Robert Lu


The test code at {{lib/php/test}} should also be checked by phpcs.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4474) PHP generator use PSR-4 default

2018-01-24 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4474?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16338468#comment-16338468
 ] 

Robert Lu commented on THRIFT-4474:
---

Maybe this is a break change.

The code generated by old thrift compiler and new thrift compiler both can be 
loaded via classmap method(in composer).

But, \Thrift\ClassLoader\ThriftClassLoader donot use classmap, it just find 
class in Service.php or Types.php, so code generated by psr4 compiler *cannot* 
be load via \Thrift\ClassLoader\ThriftClassLoader::registerDefinition. 
\Thrift\ClassLoader\ThriftClassLoader::registerNamespace should be used. 


> PHP generator use PSR-4 default
> ---
>
> Key: THRIFT-4474
> URL: https://issues.apache.org/jira/browse/THRIFT-4474
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Compiler
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Major
>
> Before, PHP generator generate php files like {{Types.php}}, {{Service.php}}.
> Those can only be load via 
> [{{classmap}}|https://getcomposer.org/doc/04-schema.md#classmap] method. The 
> latest PSR about autoload is [PSR-4|http://www.php-fig.org/psr/psr-4/].
> thrift compiler can generate PSR-4 code default, if want old-style code(which 
> can only load via classmap), add {{classmap}} option.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4474) PHP generator use PSR-4 default

2018-01-24 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4474:
-

 Summary: PHP generator use PSR-4 default
 Key: THRIFT-4474
 URL: https://issues.apache.org/jira/browse/THRIFT-4474
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Compiler
Reporter: Robert Lu
Assignee: Robert Lu


Before, PHP generator generate php files like {{Types.php}}, {{Service.php}}.
Those can only be load via 
[{{classmap}}|https://getcomposer.org/doc/04-schema.md#classmap] method. The 
latest PSR about autoload is [PSR-4|http://www.php-fig.org/psr/psr-4/].

thrift compiler can generate PSR-4 code default, if want old-style code(which 
can only load via classmap), add {{classmap}} option.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (THRIFT-4438) require php ^5.6 || ^7.0

2018-01-23 Thread Robert Lu (JIRA)

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

Robert Lu closed THRIFT-4438.
-
Resolution: Not A Problem

> require php ^5.6 || ^7.0
> 
>
> Key: THRIFT-4438
> URL: https://issues.apache.org/jira/browse/THRIFT-4438
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.11.0
>Reporter: RobberPhex
>Priority: Major
>
> We can remove php5.3~php5.5 support.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (THRIFT-4463) PHP generated code match PSR-2

2018-01-17 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4463:
--
Description: 
When use thrift compiler to generate PHP code, there are many issues doesn't 
match [PSR-2|http://www.php-fig.org/psr/psr-2/]
 * indent by 2 spaces, PSR-2 require 4 spaces.
 * Opening brace should be on a new line (for function)
 * The static declaration must come after the visibility declaration
 * etc.

 

So, we can make generated code more readable, match PSR-2(almost).

 

 

  was:
Whe use thrift compiler to generate PHP code, there are many issues doesn't 
match [PSR-2|[http://www.php-fig.org/psr/psr-2/]:]
 * indent by 2 spaces, PSR-2 require 4 spaces.
 * Opening brace should be on a new line (for function)
 * The static declaration must come after the visibility declaration
 * etc.

 

So, we can make generated code more readable, match PSR-2(almost).

 

 


> PHP generated code match PSR-2
> --
>
> Key: THRIFT-4463
> URL: https://issues.apache.org/jira/browse/THRIFT-4463
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Compiler
>Affects Versions: 0.11.0
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Minor
>
> When use thrift compiler to generate PHP code, there are many issues doesn't 
> match [PSR-2|http://www.php-fig.org/psr/psr-2/]
>  * indent by 2 spaces, PSR-2 require 4 spaces.
>  * Opening brace should be on a new line (for function)
>  * The static declaration must come after the visibility declaration
>  * etc.
>  
> So, we can make generated code more readable, match PSR-2(almost).
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4463) PHP generated code match PSR-2

2018-01-17 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4463:
-

 Summary: PHP generated code match PSR-2
 Key: THRIFT-4463
 URL: https://issues.apache.org/jira/browse/THRIFT-4463
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Compiler
Affects Versions: 0.11.0
Reporter: Robert Lu
Assignee: Robert Lu


Whe use thrift compiler to generate PHP code, there are many issues doesn't 
match [PSR-2|[http://www.php-fig.org/psr/psr-2/]:]
 * indent by 2 spaces, PSR-2 require 4 spaces.
 * Opening brace should be on a new line (for function)
 * The static declaration must come after the visibility declaration
 * etc.

 

So, we can make generated code more readable, match PSR-2(almost).

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4460) php library use PSR-2

2018-01-15 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4460:
-

 Summary: php library use PSR-2
 Key: THRIFT-4460
 URL: https://issues.apache.org/jira/browse/THRIFT-4460
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Library
Affects Versions: 0.11.0
Reporter: Robert Lu
Assignee: Robert Lu


PHP Library can use [PSR-2|http://www.php-fig.org/psr/psr-2/] as code standard



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (THRIFT-4452) optimize Dockerfile (only onetime apt-get update)

2018-01-11 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4452:
-

 Summary: optimize Dockerfile (only onetime apt-get update)
 Key: THRIFT-4452
 URL: https://issues.apache.org/jira/browse/THRIFT-4452
 Project: Thrift
  Issue Type: Improvement
  Components: Build Process
Affects Versions: 0.11.0
Reporter: Robert Lu
Assignee: Robert Lu
Priority: Minor


When build 
[apache/thrift-build|https://github.com/apache/thrift/blob/a15060a/build/docker/ubuntu-trusty/Dockerfile],
 there are many times to run apt-get update.

We can just run one time apt-get update after add all repo.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4423) migrate php library to psr-4

2017-12-24 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16303096#comment-16303096
 ] 

Robert Lu commented on THRIFT-4423:
---

[~jking3]  Is the `Thrift` folder necessary?

If you have any suggestion, please comment here.

> migrate php library to psr-4
> 
>
> Key: THRIFT-4423
> URL: https://issues.apache.org/jira/browse/THRIFT-4423
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.11.0
>Reporter: Robert Lu
>
> The latest autoload standard is [http://www.php-fig.org/psr/psr-4/].
> So, I migrate thrift to PSR-4.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4119) bootstrap.sh is missing from the source tarball

2017-12-14 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16291982#comment-16291982
 ] 

Robert Lu commented on THRIFT-4119:
---

[~ctubbsii]

I haven't permission to plan this change, and I cannot change which the 
download link is a snapshot.

so, I just mark this problem still in version 0.11.0

> bootstrap.sh is missing from the source tarball
> ---
>
> Key: THRIFT-4119
> URL: https://issues.apache.org/jira/browse/THRIFT-4119
> Project: Thrift
>  Issue Type: Bug
>  Components: Build Process
>Affects Versions: 0.10.0, 0.11.0
>Reporter: Christopher Tubbs
>Assignee: Jake Farrell
>Priority: Critical
>
> The bootstrap.sh file is missing from the source tarball. This makes building 
> from source difficult.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (THRIFT-4119) bootstrap.sh is missing from the source tarball

2017-12-14 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4119:
--
Affects Version/s: 0.11.0

> bootstrap.sh is missing from the source tarball
> ---
>
> Key: THRIFT-4119
> URL: https://issues.apache.org/jira/browse/THRIFT-4119
> Project: Thrift
>  Issue Type: Bug
>  Components: Build Process
>Affects Versions: 0.10.0, 0.11.0
>Reporter: Christopher Tubbs
>Assignee: Jake Farrell
>Priority: Critical
>
> The bootstrap.sh file is missing from the source tarball. This makes building 
> from source difficult.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4425) Publish Thrift v0.11 to packagist.org

2017-12-13 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4425:
-

 Summary: Publish Thrift v0.11 to packagist.org
 Key: THRIFT-4425
 URL: https://issues.apache.org/jira/browse/THRIFT-4425
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Reporter: Robert Lu
Assignee: Jake Farrell
 Fix For: 0.11.0


Please release 0.11.0 to [https://packagist.org/packages/apache/thrift]



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4423) migrate php library to psr-4

2017-12-13 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16290248#comment-16290248
 ] 

Robert Lu commented on THRIFT-4423:
---

[~jking3] The directory is too deep to navigate.

Before, `TBufferedTransport.php` is located at `lib/php/lib/Thrift/Transport`, 
which is five level. and `lib/php/lib` has only `Thrift` folder. So, I think 
it's unnecessary.

After, `lib/php/lib/Transport` is four level.
And ClassLoader works.

BTW, if the deep directory is necessary, I can add it back.


> migrate php library to psr-4
> 
>
> Key: THRIFT-4423
> URL: https://issues.apache.org/jira/browse/THRIFT-4423
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.11.0
>Reporter: Robert Lu
>
> The latest autoload standard is [http://www.php-fig.org/psr/psr-4/].
> So, I migrate thrift to PSR-4.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (THRIFT-4423) migrate php library to psr-4

2017-12-13 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4423:
--
External issue URL: https://github.com/apache/thrift/pull/1445

> migrate php library to psr-4
> 
>
> Key: THRIFT-4423
> URL: https://issues.apache.org/jira/browse/THRIFT-4423
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.11.0
>Reporter: Robert Lu
>
> The latest autoload standard is [http://www.php-fig.org/psr/psr-4/].
> So, I migrate thrift to PSR-4.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4423) migrate php library to psr-4

2017-12-13 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4423:
-

 Summary: migrate php library to psr-4
 Key: THRIFT-4423
 URL: https://issues.apache.org/jira/browse/THRIFT-4423
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Library
Affects Versions: 0.11.0
Reporter: Robert Lu


The latest autoload standard is [http://www.php-fig.org/psr/psr-4/].

So, I migrate thrift to PSR-4.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4374) cannot load thrift_protocol due to undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE

2017-10-26 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4374:
-

 Summary: cannot load thrift_protocol due to undefined symbol: 
_ZTVN10__cxxabiv120__si_class_type_infoE
 Key: THRIFT-4374
 URL: https://issues.apache.org/jira/browse/THRIFT-4374
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
 Environment: PHP 7.1.10, x86_64 GNU/Linux
Reporter: Robert Lu
Assignee: Robert Lu


After compiled php extesion, php cannot load php extension:

at commit 350fe7531feecf7df5208fa19d25730c6ce0a30d

{code}
php -d extension=./thrift_protocol.so -m
PHP Warning: PHP Startup: Unable to load dynamic library './thrift_protocol.so' 
- ./thrift_protocol.so: undefined symbol: ZTVN10cxxabiv120_si_class_type_infoE 
in Unknown on line 0
{code}




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-577) Factor BinaryProtocolAccelerated into separate components

2017-10-25 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16220009#comment-16220009
 ] 

Robert Lu commented on THRIFT-577:
--

The fastbinary.c is already move to lib/py/src/ext/ by THRIFT-3612.

So, I think this issue is resolved.

> Factor BinaryProtocolAccelerated into separate components
> -
>
> Key: THRIFT-577
> URL: https://issues.apache.org/jira/browse/THRIFT-577
> Project: Thrift
>  Issue Type: Improvement
>  Components: Python - Compiler, Python - Library
>Reporter: Esteve Fernandez
>
> Ben Maurer's excellent native Python library has proven to be very fast and 
> efficient, however introducing new features and bug fixes have become a 
> non-trivial task. This is because it implements the serialization process as 
> a whole. The previous version of the Ruby library followed this approach, as 
> it was actually based on Ben's library.
> Bryan split the Ruby native library in THRIFT-248, this has reduced the time 
> for incorporating new features and bug fixes, and also has enabled other 
> protocols to take advantage of the benefits of accelerated code (e.g. any 
> protocol that inherits from TProtocol)
> The aim of this task is to split TBinaryProtocolAccelerated into separate 
> pieces (e.g. TProtocolAccelerated, TBinaryProtocolAccelerated, etc.) and 
> remove fastbinary.encode/decode from the Python generator.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-515) Having the same namespace in separate thrift files generates non-working code

2017-10-25 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-515?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16219997#comment-16219997
 ] 

Robert Lu commented on THRIFT-515:
--

As discussed above,

This is not a bug.

Please close this.

> Having the same namespace in separate thrift files generates non-working code
> -
>
> Key: THRIFT-515
> URL: https://issues.apache.org/jira/browse/THRIFT-515
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Compiler
>Reporter: Jonathan Kupferman
>Priority: Minor
>
> If there are two thrift files which use the same namespace the generated 
> python code does not work. A sample case is the two thrift files provided 
> below:
> test.thrift--
> namespace py Sample
> struct Name {
> 1: string n
> }
> struct User {
> 1: i32 id,
> 2: Name user_name
> }
>  end test.thrift--
> test_service.thrift---
> include "test.thrift"
> namespace py Sample
> service TestService {
>   test.User get_user(1: i64 id),
>   test.Name get_user_name(1: i64 id),
> }
> end test_service.thrift---
> This happens because the ttypes for test.thrift are clobbered by the ttypes 
> for TestService. As a result TestService is not imported correctly.
> >>> import Sample
> >>> import Sample.ttypes
> >>> from Sample import *
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "Sample/TestService.py", line 205, in 
> class get_user_result:
>   File "Sample/TestService.py", line 212, in get_user_result
> (0, TType.STRUCT, 'success', (Sample.ttypes.User, 
> Sample.ttypes.User.thrift_spec), None, ), # 0
> AttributeError: 'module' object has no attribute 'User'



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4356) thrift_protocol call Transport cause Segmentation fault

2017-10-25 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16219284#comment-16219284
 ] 

Robert Lu commented on THRIFT-4356:
---

[~danielsmithsd]

Thanks for your feedback,

I submit a PR: https://github.com/apache/thrift/pull/1400

 

[~jking3]

Sorry for leave a bug, should I open a new issue? Or, just review 
https://github.com/apache/thrift/pull/1400?

> thrift_protocol call Transport cause Segmentation fault
> ---
>
> Key: THRIFT-4356
> URL: https://issues.apache.org/jira/browse/THRIFT-4356
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
> Environment: PHP 7.0.23 (cli) (built: Sep 25 2017 08:07:30) ( NTS )
> macOS 10.13.1 Beta (17B25c)
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Critical
> Fix For: 0.11.0
>
>
> When thrift_protocol extension try to read or write some bytes, if there is 
> some exception, will cause Segmentation fault



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4271) warning: 'register' storage class is deprecated

2017-10-25 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16219228#comment-16219228
 ] 

Robert Lu commented on THRIFT-4271:
---

When you build thrift_prototcol php extension,

after run phpize, .configure

when run make,

you will get some warming:


{code}
In file included from 
/path/to/thrift/lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp:23:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/main/php.h:35:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend.h:35:
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend_string.h:326:2: 
warning: 'register' storage class specifier is deprecated and incompatible with 
C++1z [-Wdeprecated-register]
register zend_ulong hash = Z_UL(5381);
^
In file included from 
/path/to/thrift/lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp:23:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/main/php.h:35:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend.h:36:
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend_hash.h:251:2: warning: 
'register' storage class specifier is deprecated and incompatible with C++1z 
[-Wdeprecated-register]
register const char *tmp = key;
^
In file included from 
/path/to/thrift/lib/php/src/ext/thrift_protocol/php_thrift_protocol.cpp:23:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/main/php.h:35:
In file included from 
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend.h:343:
/usr/local/Cellar/php70/7.0.24_16/include/php/Zend/zend_operators.h:188:2: 
warning: 'register' storage class specifier is deprecated and incompatible with 
C++1z [-Wdeprecated-register]
register const unsigned char *e;
^
{code}

But, as I mentioned.

This is caused by code at PHP headers, and PHP7.1 fixed this warning.


>  warning: 'register' storage class is deprecated
> 
>
> Key: THRIFT-4271
> URL: https://issues.apache.org/jira/browse/THRIFT-4271
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Reporter: Jens Geyer
>Priority: Minor
>
> Travis emits warnings:
> {{warning: 'register' storage class specifier is deprecated 
> [-Wdeprecated-register]}}
> at multiple places.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-496) Pure python reader/writer

2017-10-24 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16216704#comment-16216704
 ] 

Robert Lu commented on THRIFT-496:
--

accelerated python compact protocol is implemented by THRIFT-3612 .

So, I think we can close this.:)

> Pure python reader/writer
> -
>
> Key: THRIFT-496
> URL: https://issues.apache.org/jira/browse/THRIFT-496
> Project: Thrift
>  Issue Type: Improvement
>  Components: Python - Library
>Reporter: Alexander Shigin
> Attachments: thrift-python-pure-rw.patch
>
>
> There isn't any way to implement accelerated python compact protocol.
> The patch introduce pure python reader and writer. It allows to use 
> fastbinary protocol by default or introduce fastcompact reader and writer.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4168) Travis CI builds are being triggered by apache master pushes

2017-10-24 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16216680#comment-16216680
 ] 

Robert Lu commented on THRIFT-4168:
---

[~jking3]

I think CI at master is a indicator of health of branch master.

Why need to ignore master CI? just for save slave pool?

> Travis CI builds are being triggered by apache master pushes
> 
>
> Key: THRIFT-4168
> URL: https://issues.apache.org/jira/browse/THRIFT-4168
> Project: Thrift
>  Issue Type: Improvement
>  Components: Build Process
>Affects Versions: 0.11.0
> Environment: Travis CI
>Reporter: James E. King, III
>Assignee: Jake Farrell
>Priority: Minor
> Fix For: 0.11.0
>
>
> When I commit and push something into the apache git repository for thrift, 
> it synchronizes to github and that seems to add an Travis CI job to build it.
> This is an example:
> https://travis-ci.org/apache/thrift/builds/218868926



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4037) [CMake] Use a single build system for thrift to make development easier

2017-10-23 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16216225#comment-16216225
 ] 

Robert Lu commented on THRIFT-4037:
---

Personally,

I'd like to migrate to cmake.



But, I haven't see any final decision.

*keep in autotools, remove cmake? or migrate to cmake, remove autotools? or 
keep cmake and autotools?*

It's difficult to keep autotools *and* cmake works.

> [CMake] Use a single build system for thrift to make development easier
> ---
>
> Key: THRIFT-4037
> URL: https://issues.apache.org/jira/browse/THRIFT-4037
> Project: Thrift
>  Issue Type: Epic
>  Components: Build Process
>Affects Versions: 0.10.0
> Environment: All
>Reporter: James E. King, III
>Assignee: James E. King, III
>Priority: Critical
>
> h1. Background
> The thrift project currently carries two build systems.  The original build 
> system is based on autoconf and is used to build a complete deliverable 
> including extensive cross-language testing.
> The other build system was introduced a few years ago, with roots tracing 
> back to THRIFT-797.  CMake allows thrift to build natively on multiple 
> platforms - unix and windows.  Autoconf is no longer under active development 
> with the last release in 2012, and it does not allow for native windows 
> builds using native tools that are used by a majority of consumers.
> Maintaining two build systems for a project incurs a lot of overhead.  Every 
> change that touches the build system needs to be done twice, in two 
> completely different ways.  We need twice as many CI jobs to verify that all 
> of the builds are working, whereas with a single cmake build environment we 
> could likely use a single CI build job per platform that does everything 
> using the docker image on linux and appveyor on windows.
> h1. Proposal
> We should officially deprecate autoconf in favor of cmake, and continue (more 
> aggressively) the effort to make the cmake build environment as functional as 
> the autoconf build environment.  During this transition, folks will be 
> required to make changes to both build systems (which are proven out mostly 
> through the Travis CI build jobs; only CMake is used on AppVeyor).
> h1. Acceptance Criteria
> # All existing platforms, targets, and tests are converted to use cmake
> ## Including cross-compilation
> # All CI builds are converted to use cmake
> # autoconf build environment is removed



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Comment Edited] (THRIFT-3983) libthrift is deployed on central with pom packaging instead of jar

2017-10-16 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-3983?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16205480#comment-16205480
 ] 

Robert Lu edited comment on THRIFT-3983 at 10/16/17 7:03 AM:
-

Hi, [~jking3] 

Definitely it's not right at 
[lib/java/build.xml|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L329].

But I don't know why [signAndDeploy for a pom 
file|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L416].

I think just signAndDeploy for jar, src.jar, javadoc, not pom.


was (Author: robert lu):
Hi, [~jking3] 

Defiantly it's not right at 
[lib/java/build.xml|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L329].

But I don't know why [signAndDeploy for a pom 
file|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L416].

I think just signAndDeploy for jar, src.jar, javadoc, not pom.

> libthrift is deployed on central with pom packaging instead of jar
> --
>
> Key: THRIFT-3983
> URL: https://issues.apache.org/jira/browse/THRIFT-3983
> Project: Thrift
>  Issue Type: Bug
>  Components: Java - Library
>Affects Versions: 0.9.3
>Reporter: Stéphane Landelle
>Priority: Blocker
>
> Hi,
> libthrift is deployed with a "pom" packaging on maven central, see 
> https://repo1.maven.org/maven2/org/apache/thrift/libthrift/0.9.3/libthrift-0.9.3.pom
> org.apache.thrift
> libthrift
> 0.9.3
> pom
> Apache Thrift
> This is very wrong. "pom" means "no jar, just a list of dependencies to be 
> pulled transitively".
> As a consequence, some build tools, such as sbt, don't pull the libthrift jar 
> itself.
> The pom should be be using a "jar" packaging, or even no packaging at all as 
> "jar" is the default value.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-3983) libthrift is deployed on central with pom packaging instead of jar

2017-10-16 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-3983?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16205480#comment-16205480
 ] 

Robert Lu commented on THRIFT-3983:
---

Hi, [~jking3] 

Defiantly it's not right at 
[lib/java/build.xml|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L329].

But I don't know why [signAndDeploy for a pom 
file|https://github.com/apache/thrift/blob/8b8a8efea13d1c97f856053af0a5c0e6a8a76354/lib/java/build.xml#L416].

I think just signAndDeploy for jar, src.jar, javadoc, not pom.

> libthrift is deployed on central with pom packaging instead of jar
> --
>
> Key: THRIFT-3983
> URL: https://issues.apache.org/jira/browse/THRIFT-3983
> Project: Thrift
>  Issue Type: Bug
>  Components: Java - Library
>Affects Versions: 0.9.3
>Reporter: Stéphane Landelle
>Priority: Blocker
>
> Hi,
> libthrift is deployed with a "pom" packaging on maven central, see 
> https://repo1.maven.org/maven2/org/apache/thrift/libthrift/0.9.3/libthrift-0.9.3.pom
> org.apache.thrift
> libthrift
> 0.9.3
> pom
> Apache Thrift
> This is very wrong. "pom" means "no jar, just a list of dependencies to be 
> pulled transitively".
> As a consequence, some build tools, such as sbt, don't pull the libthrift jar 
> itself.
> The pom should be be using a "jar" packaging, or even no packaging at all as 
> "jar" is the default value.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4119) bootstrap.sh is missing from the source tarball

2017-10-10 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16198462#comment-16198462
 ] 

Robert Lu commented on THRIFT-4119:
---

[~ctubbsii] 

Well, I agree with you.

[~jfarrell]

Talk about the release directory structure, I think we can improve it:
# the tar.gz download should be repo snapshot.
# http://www.apache.org/dist/thrift/debian/ and 
http://www.apache.org/dist/thrift/rpm/ should contain the thrift and 
thrift-compiler package, and update in time. the rpm and deb repo is still 
version 0.9.3.

> bootstrap.sh is missing from the source tarball
> ---
>
> Key: THRIFT-4119
> URL: https://issues.apache.org/jira/browse/THRIFT-4119
> Project: Thrift
>  Issue Type: Bug
>  Components: Build Process
>Affects Versions: 0.10.0
>Reporter: Christopher Tubbs
>Assignee: Jake Farrell
>Priority: Critical
>
> The bootstrap.sh file is missing from the source tarball. This makes building 
> from source difficult.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4356) thrift_protocol call Transport cause Segmentation fault

2017-10-09 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16198033#comment-16198033
 ] 

Robert Lu commented on THRIFT-4356:
---

[~jfarrell]

The root cause is extension call user function , but not check EG(exception),
so I add those check.

If there is any probolem, please comment there. thanks.

> thrift_protocol call Transport cause Segmentation fault
> ---
>
> Key: THRIFT-4356
> URL: https://issues.apache.org/jira/browse/THRIFT-4356
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
> Environment: PHP 7.0.23 (cli) (built: Sep 25 2017 08:07:30) ( NTS )
> macOS 10.13.1 Beta (17B25c)
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Critical
>
> When thrift_protocol extension try to read or write some bytes, if there is 
> some exception, will cause Segmentation fault



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4354) TSocket block on read

2017-10-09 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16198031#comment-16198031
 ] 

Robert Lu commented on THRIFT-4354:
---

[~jfarrell]

I think it's a simple fix. Is there any problem?

> TSocket block on read
> -
>
> Key: THRIFT-4354
> URL: https://issues.apache.org/jira/browse/THRIFT-4354
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
> Environment: php7.0 + macOS
>Reporter: Robert Lu
>Assignee: Robert Lu
>
> When \Thrift\Transport\TSocket::read is called, it will block until receive 
> $len 
> byte([TSocket.php#L273-L276|https://github.com/apache/thrift/blob/master/lib/php/lib/Thrift/Transport/TSocket.php#L273-L276])
> But, sometimes, other call TSocket::read with large length,
> such as 
> [TBufferedTransport|https://github.com/apache/thrift/blob/39310dad793ca69b4b7217a3b54430e682e5e2a4/lib/php/lib/Thrift/Transport/TBufferedTransport.php#L136-L138]:
> {code}
> if (TStringFuncFactory::create()->strlen($this->rBuf_) === 0) {
>   $this->rBuf_ = $this->transport_->read($this->rBufSize_);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4361) cannot serialize set<map<i32, i64> > via extension

2017-10-09 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4361:
-

 Summary: cannot serialize set > via extension
 Key: THRIFT-4361
 URL: https://issues.apache.org/jira/browse/THRIFT-4361
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Affects Versions: 0.10.0
 Environment: macOS 10.13
PHP 7.0.23
Reporter: Robert Lu
Assignee: Robert Lu


method is:

bool echoF(1: set > arg)

but, when arg is [[1=>3,5=>7],[11=>13]] and serialize via extension,
it cause Segmentation fault: 11



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4271) warning: 'register' storage class is deprecated

2017-10-08 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196461#comment-16196461
 ] 

Robert Lu commented on THRIFT-4271:
---

Firstly,
I don't think this is a Major bug.

And,
the "'register' storage class is deprecated" is reported at header file 
provided by php(7.0.23).
When I use php 7.1.7, there is no such warning.

>  warning: 'register' storage class is deprecated
> 
>
> Key: THRIFT-4271
> URL: https://issues.apache.org/jira/browse/THRIFT-4271
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Reporter: Jens Geyer
>
> Travis emits warnings:
> {{warning: 'register' storage class specifier is deprecated 
> [-Wdeprecated-register]}}
> at multiple places.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (THRIFT-4356) thrift_protocol call Transport cause Segmentation fault

2017-10-04 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4356:
--
Environment: 
PHP 7.0.23 (cli) (built: Sep 25 2017 08:07:30) ( NTS )
macOS 10.13.1 Beta (17B25c)

> thrift_protocol call Transport cause Segmentation fault
> ---
>
> Key: THRIFT-4356
> URL: https://issues.apache.org/jira/browse/THRIFT-4356
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
> Environment: PHP 7.0.23 (cli) (built: Sep 25 2017 08:07:30) ( NTS )
> macOS 10.13.1 Beta (17B25c)
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Critical
>
> When thrift_protocol extension try to read or write some bytes, if there is 
> some exception, will cause Segmentation fault



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4356) thrift_protocol call Transport cause Segmentation fault

2017-10-04 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16191493#comment-16191493
 ] 

Robert Lu commented on THRIFT-4356:
---

How to reproduce:

{code}
git clone https://github.com/RobberPhex/thrift_example.git
cd thrift_example
git checkout example
composer install
# at terminal 1
nc -l 9090 < /dev/null
# at terminal 2
php client.php # with thrift_protocol extension
# caused Segmentation fault: 11
{code}




> thrift_protocol call Transport cause Segmentation fault
> ---
>
> Key: THRIFT-4356
> URL: https://issues.apache.org/jira/browse/THRIFT-4356
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Critical
>
> When thrift_protocol extension try to read or write some bytes, if there is 
> some exception, will cause Segmentation fault



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4356) thrift_protocol call Transport cause Segmentation fault

2017-10-04 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4356:
-

 Summary: thrift_protocol call Transport cause Segmentation fault
 Key: THRIFT-4356
 URL: https://issues.apache.org/jira/browse/THRIFT-4356
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Affects Versions: 0.10.0, 0.9.3
Reporter: Robert Lu
Assignee: Robert Lu
Priority: Critical


When thrift_protocol extension try to read or write some bytes, if there is 
some exception, will cause Segmentation fault



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Closed] (THRIFT-3845) TBinaryProtocolAccelerated cannot use thrift_protocol ext

2017-10-04 Thread Robert Lu (JIRA)

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

Robert Lu closed THRIFT-3845.
-
Resolution: Won't Fix

> TBinaryProtocolAccelerated cannot use thrift_protocol ext
> -
>
> Key: THRIFT-3845
> URL: https://issues.apache.org/jira/browse/THRIFT-3845
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Compiler, PHP - Library
>Affects Versions: 0.9.3
> Environment: PHP7 with thrift 0.9.3, with thrift_protocol, at OS X 
> 10.11
>Reporter: Robert Lu
>Assignee: Robert Lu
>Priority: Minor
>
> compiler generate phpcode:
>  instanceof TBinaryProtocolAccelerated
> to indicate use thrift_protocol, but when TBinaryProtocolAccelerated warped 
> in TMultiplexedProtocol, thrift_protocol doesn't used, because 
> TMultiplexedProtocol isn't TBinaryProtocolAccelerated's instence.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4354) TSocket block on read

2017-10-03 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4354:
-

 Summary: TSocket block on read
 Key: THRIFT-4354
 URL: https://issues.apache.org/jira/browse/THRIFT-4354
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Affects Versions: 0.10.0, 0.9.3
 Environment: php7.0 + macOS
Reporter: Robert Lu
Assignee: Robert Lu


When \Thrift\Transport\TSocket::read is called, it will block until receive 
$len 
byte([TSocket.php#L273-L276|https://github.com/apache/thrift/blob/master/lib/php/lib/Thrift/Transport/TSocket.php#L273-L276])

But, sometimes, other call TSocket::read with large length,
such as 
[TBufferedTransport|https://github.com/apache/thrift/blob/39310dad793ca69b4b7217a3b54430e682e5e2a4/lib/php/lib/Thrift/Transport/TBufferedTransport.php#L136-L138]:

{code:php}
if (TStringFuncFactory::create()->strlen($this->rBuf_) === 0) {
  $this->rBuf_ = $this->transport_->read($this->rBufSize_);
}
{code}





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (THRIFT-4354) TSocket block on read

2017-10-03 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4354:
--
Description: 
When \Thrift\Transport\TSocket::read is called, it will block until receive 
$len 
byte([TSocket.php#L273-L276|https://github.com/apache/thrift/blob/master/lib/php/lib/Thrift/Transport/TSocket.php#L273-L276])

But, sometimes, other call TSocket::read with large length,
such as 
[TBufferedTransport|https://github.com/apache/thrift/blob/39310dad793ca69b4b7217a3b54430e682e5e2a4/lib/php/lib/Thrift/Transport/TBufferedTransport.php#L136-L138]:

{code}
if (TStringFuncFactory::create()->strlen($this->rBuf_) === 0) {
  $this->rBuf_ = $this->transport_->read($this->rBufSize_);
}
{code}



  was:
When \Thrift\Transport\TSocket::read is called, it will block until receive 
$len 
byte([TSocket.php#L273-L276|https://github.com/apache/thrift/blob/master/lib/php/lib/Thrift/Transport/TSocket.php#L273-L276])

But, sometimes, other call TSocket::read with large length,
such as 
[TBufferedTransport|https://github.com/apache/thrift/blob/39310dad793ca69b4b7217a3b54430e682e5e2a4/lib/php/lib/Thrift/Transport/TBufferedTransport.php#L136-L138]:

{code:php}
if (TStringFuncFactory::create()->strlen($this->rBuf_) === 0) {
  $this->rBuf_ = $this->transport_->read($this->rBufSize_);
}
{code}




> TSocket block on read
> -
>
> Key: THRIFT-4354
> URL: https://issues.apache.org/jira/browse/THRIFT-4354
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 0.9.3, 0.10.0
> Environment: php7.0 + macOS
>Reporter: Robert Lu
>Assignee: Robert Lu
>
> When \Thrift\Transport\TSocket::read is called, it will block until receive 
> $len 
> byte([TSocket.php#L273-L276|https://github.com/apache/thrift/blob/master/lib/php/lib/Thrift/Transport/TSocket.php#L273-L276])
> But, sometimes, other call TSocket::read with large length,
> such as 
> [TBufferedTransport|https://github.com/apache/thrift/blob/39310dad793ca69b4b7217a3b54430e682e5e2a4/lib/php/lib/Thrift/Transport/TBufferedTransport.php#L136-L138]:
> {code}
> if (TStringFuncFactory::create()->strlen($this->rBuf_) === 0) {
>   $this->rBuf_ = $this->transport_->read($this->rBufSize_);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Created] (THRIFT-4353) cannot read via thrift_protocol at server side

2017-10-03 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4353:
-

 Summary: cannot read via thrift_protocol at server side
 Key: THRIFT-4353
 URL: https://issues.apache.org/jira/browse/THRIFT-4353
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Library
Affects Versions: 0.10.0, 0.9.3
 Environment: php7 + macOS
Reporter: Robert Lu
Assignee: Robert Lu
Priority: Minor


When server read message, the processor read the method name, and then server 
will know the $args type.
At this time, We cannot use thrift_protocol_read_binary, because message head 
is already read.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (THRIFT-4119) bootstrap.sh is missing from the source tarball

2017-09-29 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16186879#comment-16186879
 ] 

Robert Lu commented on THRIFT-4119:
---

*Can you give the download link which you used?*

I tried download from github and apache mirrors.

1. I download from github, there is bootstrap.sh
2. I download from apache mirror, there isn't bootstrap.sh, but has configure, 
you can use `./configure` directly.

> bootstrap.sh is missing from the source tarball
> ---
>
> Key: THRIFT-4119
> URL: https://issues.apache.org/jira/browse/THRIFT-4119
> Project: Thrift
>  Issue Type: Bug
>  Components: Build Process
>Affects Versions: 0.10.0
>Reporter: Christopher Tubbs
>Assignee: Jake Farrell
>Priority: Critical
>
> The bootstrap.sh file is missing from the source tarball. This makes building 
> from source difficult.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (THRIFT-4034) CMake doesn't work to build compiler

2017-01-19 Thread Robert Lu (JIRA)

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

Robert Lu updated THRIFT-4034:
--
External issue URL: https://github.com/apache/thrift/pull/1161

> CMake doesn't work to build compiler
> 
>
> Key: THRIFT-4034
> URL: https://issues.apache.org/jira/browse/THRIFT-4034
> Project: Thrift
>  Issue Type: Bug
>  Components: Compiler (General)
>Affects Versions: 0.10.0
> Environment: macOS Sierra + CMake 3.7.2
>Reporter: Robert Lu
>Assignee: Robert Lu
>  Labels: beginner
> Fix For: 0.11.0
>
>
> AS 
> [document|https://github.com/apache/thrift/blob/0.10.0/compiler/cpp/README.md#build-compiler-using-cmake]
>  said.
> When I ran {{cmake ..}} in {{/thrift/compiler/cpp/cmake-build}}, CMake 
> reports error as below:
> {quote}
> -- The C compiler identification is AppleClang 8.0.0.842
> -- The CXX compiler identification is AppleClang 8.0.0.842
> -- Check for working C compiler: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
> -- Check for working C compiler: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
>  -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
> -- Check for working CXX compiler: 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
>  -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Found FLEX: /usr/bin/flex (found version "2.5.35") 
> -- Found BISON: /usr/local/bin/bison (found version "3.0.4") 
> CMake Error at CMakeLists.txt:152 (install):
>   install TARGETS given no RUNTIME DESTINATION for executable target
>   "thrift-compiler".
> CMake Warning (dev) in CMakeLists.txt:
>   No cmake_minimum_required command is present.  A line of code such as
> cmake_minimum_required(VERSION 3.7)
>   should be added at the top of the file.  The version specified may be lower
>   if you wish to support older CMake versions for this project.  For more
>   information run "cmake --help-policy CMP".
> This warning is for project developers.  Use -Wno-dev to suppress it.
> -- Configuring incomplete, errors occurred!
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (THRIFT-4034) CMake doesn't work to build compiler

2017-01-19 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-4034:
-

 Summary: CMake doesn't work to build compiler
 Key: THRIFT-4034
 URL: https://issues.apache.org/jira/browse/THRIFT-4034
 Project: Thrift
  Issue Type: Bug
  Components: Compiler (General)
Affects Versions: 0.10.0
 Environment: macOS Sierra + CMake 3.7.2
Reporter: Robert Lu
Assignee: Robert Lu
 Fix For: 0.11.0


AS 
[document|https://github.com/apache/thrift/blob/0.10.0/compiler/cpp/README.md#build-compiler-using-cmake]
 said.

When I ran {{cmake ..}} in {{/thrift/compiler/cpp/cmake-build}}, CMake reports 
error as below:

{quote}
-- The C compiler identification is AppleClang 8.0.0.842
-- The CXX compiler identification is AppleClang 8.0.0.842
-- Check for working C compiler: 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
 -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found FLEX: /usr/bin/flex (found version "2.5.35") 
-- Found BISON: /usr/local/bin/bison (found version "3.0.4") 
CMake Error at CMakeLists.txt:152 (install):
  install TARGETS given no RUNTIME DESTINATION for executable target
  "thrift-compiler".


CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

cmake_minimum_required(VERSION 3.7)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more
  information run "cmake --help-policy CMP".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring incomplete, errors occurred!
{quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (THRIFT-3844) thrift_protocol cannot compile in 7.0.7

2016-08-01 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-3844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15401584#comment-15401584
 ] 

Robert Lu commented on THRIFT-3844:
---

[~jfarrell] If there is something bad in this issue, please commit. Thank you

> thrift_protocol cannot compile in 7.0.7
> ---
>
> Key: THRIFT-3844
> URL: https://issues.apache.org/jira/browse/THRIFT-3844
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 1.0
> Environment: PHP 7.0.7, x86-64, OS-X 10.11
>Reporter: Robert Lu
>
> When compile thrift_protocol extension with php7.0.7 in OS X 10.11,
> Report error:
> php_thrift_protocol7.cpp:290:27: error: no member named 'min' in namespace 
> 'std'; did you mean 'fmin'?
> and
> zend_hash.h:168:30: note: candidate function not viable: no known conversion 
> from 'unsigned long *' to 'zend_ulong *' (aka 'unsigned long long *') for 3rd 
> argument
> ZEND_API int   ZEND_FASTCALL zend_hash_get_current_key_ex(const HashTable 
> *ht, zend_string **str_index, zend_ulong *num_index, HashPosition *pos);
> *And I find someone in github solved this problom, but no one notice it, so I 
> create this issue*



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (THRIFT-3846) thriftClient connect some thriftServers cause IOException.

2016-06-02 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-3846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15312740#comment-15312740
 ] 

Robert Lu commented on THRIFT-3846:
---

You'd better debug in server,

First, you can debug in process method to know the error is in receive args or 
send result.
Second, you can debug into protocol level.



And, your error cannot reproduced.
paste more information is welcomed.

> thriftClient connect some thriftServers cause IOException.
> --
>
> Key: THRIFT-3846
> URL: https://issues.apache.org/jira/browse/THRIFT-3846
> Project: Thrift
>  Issue Type: Bug
>Affects Versions: 0.9.3
> Environment: Windows, Linux, Csharp, Java
>Reporter: tft_yh
> Attachments: QQ截图20160601180516.jpg, QQ截图20160601184710.jpg
>
>
> In our environment, there are one client (thriftClient) and several servers 
> (thriftServer) which IP addresses are not the same. 
> When a few of servers, such as 3 ~ 4, the client connect to the server can 
> work normally.
> But when the server reaches more than 8, when the client connect to the 
> server, the client will be terminated immediately, the exception location as 
> follows:
> Public string recv_login ()
> {
> TMessage MSG = iprot_. ReadMessageBegin (); // here - Cannot read. Remote 
> side has closed.
> ..
> }
> To find out the reason, use Wireshark to trace the problem, find some server 
> which report error exception, send the RST state to client. Then I use client 
> (thriftClient) directly connect error server, it is successed.
> client (thriftClient) and server (thriftServer) codes as follows:
> On the client side:
> transport = new TSocket(serverIP, 7911);
> TProtocol protocol = new TBinaryProtocol(transport);
> client = new TestService.Client(protocol);
> transport.Open();
> client.login(.);
> On the server side:
> TServerSocket serverTransport = new TServerSocket(port, 0, false);
> TestService.Processor processor = new TestService.Processor(new 
> TestServicesImpl());
> TServer server = new TThreadedServer(processor, serverTransport);
> server.Serve();
> How should I do?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (THRIFT-3845) TBinaryProtocolAccelerated cannot use thrift_protocol ext

2016-05-31 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-3845:
-

 Summary: TBinaryProtocolAccelerated cannot use thrift_protocol ext
 Key: THRIFT-3845
 URL: https://issues.apache.org/jira/browse/THRIFT-3845
 Project: Thrift
  Issue Type: Improvement
  Components: PHP - Compiler, PHP - Library
Affects Versions: 0.9.3
 Environment: PHP7 with thrift 0.9.3, with thrift_protocol, at OS X 
10.11
Reporter: Robert Lu
Priority: Minor


compiler generate phpcode:

 instanceof TBinaryProtocolAccelerated

to indicate use thrift_protocol, but when TBinaryProtocolAccelerated warped in 
TMultiplexedProtocol, thrift_protocol doesn't used, because 
TMultiplexedProtocol isn't TBinaryProtocolAccelerated's instence.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (THRIFT-3844) thrift_protocol cannot compile in 7.0.7

2016-05-31 Thread Robert Lu (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-3844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15307914#comment-15307914
 ] 

Robert Lu commented on THRIFT-3844:
---

There is my pr [https://github.com/apache/thrift/pull/1021]

and there is origin pr [https://github.com/apache/thrift/pull/971]

> thrift_protocol cannot compile in 7.0.7
> ---
>
> Key: THRIFT-3844
> URL: https://issues.apache.org/jira/browse/THRIFT-3844
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Affects Versions: 1.0
> Environment: PHP 7.0.7, x86-64, OS-X 10.11
>Reporter: Robert Lu
>
> When compile thrift_protocol extension with php7.0.7 in OS X 10.11,
> Report error:
> php_thrift_protocol7.cpp:290:27: error: no member named 'min' in namespace 
> 'std'; did you mean 'fmin'?
> and
> zend_hash.h:168:30: note: candidate function not viable: no known conversion 
> from 'unsigned long *' to 'zend_ulong *' (aka 'unsigned long long *') for 3rd 
> argument
> ZEND_API int   ZEND_FASTCALL zend_hash_get_current_key_ex(const HashTable 
> *ht, zend_string **str_index, zend_ulong *num_index, HashPosition *pos);
> *And I find someone in github solved this problom, but no one notice it, so I 
> create this issue*



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (THRIFT-3844) thrift_protocol cannot compile in 7.0.7

2016-05-31 Thread Robert Lu (JIRA)
Robert Lu created THRIFT-3844:
-

 Summary: thrift_protocol cannot compile in 7.0.7
 Key: THRIFT-3844
 URL: https://issues.apache.org/jira/browse/THRIFT-3844
 Project: Thrift
  Issue Type: Bug
  Components: PHP - Library
Affects Versions: 1.0
 Environment: PHP 7.0.7, x86-64, OS-X 10.11
Reporter: Robert Lu


When compile thrift_protocol extension with php7.0.7 in OS X 10.11,

Report error:

php_thrift_protocol7.cpp:290:27: error: no member named 'min' in namespace 
'std'; did you mean 'fmin'?

and

zend_hash.h:168:30: note: candidate function not viable: no known conversion 
from 'unsigned long *' to 'zend_ulong *' (aka 'unsigned long long *') for 3rd 
argument
ZEND_API int   ZEND_FASTCALL zend_hash_get_current_key_ex(const HashTable *ht, 
zend_string **str_index, zend_ulong *num_index, HashPosition *pos);

*And I find someone in github solved this problom, but no one notice it, so I 
create this issue*



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)