[jira] [Commented] (TUBEMQ-141) Remove the requirement to provide localHostIP

2020-05-22 Thread viviel (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17114490#comment-17114490
 ] 

viviel commented on TUBEMQ-141:
---

Ok i will take this part into account

> Remove the requirement to provide localHostIP
> -
>
> Key: TUBEMQ-141
> URL: https://issues.apache.org/jira/browse/TUBEMQ-141
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: viviel
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: image-2020-05-21-20-54-37-013.png
>
>
> The initial requirement to provide localHostIP during initialization is 
> because we have multiple network cards and multiple IPs in our environment. 
> The initial implementation is to find the first IP from the specified 
> NetworkInterface and report it, but It is found that sometimes the specified 
> NetworkInterface is not configured with IP, so, we consider the user is 
> required to provide a local IP:
>  !image-2020-05-21-20-54-37-013.png! 
> After a period of use, the user feedback the API is cumbersome to use. The 
> best way is to provide a configurable NetworkInterface API, so if the IP is 
> not found, we can change the NetworkInterface.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (TUBEMQ-154) Modify the wrong comment & Minor changes for example module

2020-05-22 Thread viviel (Jira)


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

viviel resolved TUBEMQ-154.
---
Resolution: Fixed

> Modify the wrong comment & Minor changes for example module
> ---
>
> Key: TUBEMQ-154
> URL: https://issues.apache.org/jira/browse/TUBEMQ-154
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: viviel
>Assignee: viviel
>Priority: Low
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> 1.  Modify the wrong comment
> {code:java}
> /**
>  * Send message synchronous. More efficient and recommended.
>  */
> public void sendMessageAsync() {}
> {code}
> change to
> {code:java}
> /**
>  * Send message asynchronous. More efficient and recommended.
>  */
> public void sendMessageAsync() {}
> {code}
> 2. Optimize variable naming



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [incubator-tubemq] viviel opened a new pull request #93: [TUBEMQ-154] Modify the wrong comment & Minor changes for example module

2020-05-22 Thread GitBox


viviel opened a new pull request #93:
URL: https://github.com/apache/incubator-tubemq/pull/93


   1. Modify the wrong comment
   ```
   /**
* Send message synchronous. More efficient and recommended.
*/
   public void sendMessageAsync() {}
   ```
   change to
   ```
   /**
* Send message asynchronous. More efficient and recommended.
*/
   public void sendMessageAsync() {}
   ```
   2. Optimize variable naming



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[jira] [Created] (TUBEMQ-154) Modify the wrong comment & Minor changes for example module

2020-05-22 Thread viviel (Jira)
viviel created TUBEMQ-154:
-

 Summary: Modify the wrong comment & Minor changes for example 
module
 Key: TUBEMQ-154
 URL: https://issues.apache.org/jira/browse/TUBEMQ-154
 Project: Apache TubeMQ
  Issue Type: Improvement
Reporter: viviel
Assignee: viviel
 Fix For: 0.5.0


1.  Modify the wrong comment

{code:java}
/**
 * Send message synchronous. More efficient and recommended.
 */
public void sendMessageAsync() {}
{code}

change to

{code:java}
/**
 * Send message asynchronous. More efficient and recommended.
 */
public void sendMessageAsync() {}
{code}

2. Optimize variable naming



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-149) Some of the consumers stop consuming their corresponding partitions and never release the partition to others

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-149?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17114031#comment-17114031
 ] 

Guocheng Zhang commented on TUBEMQ-149:
---

This issue needs to be verified, and then closed

> Some of the consumers stop consuming their corresponding partitions and never 
> release the partition to others
> -
>
> Key: TUBEMQ-149
> URL: https://issues.apache.org/jira/browse/TUBEMQ-149
> Project: Apache TubeMQ
>  Issue Type: Bug
>Reporter: Mark Law
>Assignee: Guocheng Zhang
>Priority: Critical
>  Labels: pull-request-available
> Fix For: 0.3.0, 0.5.0
>
> Attachments: screenshot-1.png
>
>
> We have experienced issues while we consuming a topic for a while, some of 
> the consumers will wait forever and stop consuming from Tube.
> The problem here is the corresponding partitions are being held and it will 
> not trigger any repartition, therefore messages would be delayed in these 
> partitions while the others are OK.
>  
> We have faced this issue in both 3.5.x and 3.8.x version recently, however we 
> have used Tube for months and never have this issue before.
> Another point here is we have 100+ topics and many consumers, only a few 
> consumer groups are having this issue.
> It is hard to reproduce since it just happened randomly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-141) Remove the requirement to provide localHostIP

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113988#comment-17113988
 ] 

Guocheng Zhang commented on TUBEMQ-141:
---

In addition, a default preferred Network interface can be added: the address is 
first obtained from the default preferred Network interface, and if there is no 
requirement, the address is obtained from other Network interfaces. The default 
preferred network interface should be configurable by user.

I wonder if it is necessary to add the following: if there is no IP that meets 
the requirements from all the Network interfaces, then try to obtain a local IP 
from InetAddress class.

See if there are repetitions and unnecessary points

> Remove the requirement to provide localHostIP
> -
>
> Key: TUBEMQ-141
> URL: https://issues.apache.org/jira/browse/TUBEMQ-141
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: viviel
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: image-2020-05-21-20-54-37-013.png
>
>
> The initial requirement to provide localHostIP during initialization is 
> because we have multiple network cards and multiple IPs in our environment. 
> The initial implementation is to find the first IP from the specified 
> NetworkInterface and report it, but It is found that sometimes the specified 
> NetworkInterface is not configured with IP, so, we consider the user is 
> required to provide a local IP:
>  !image-2020-05-21-20-54-37-013.png! 
> After a period of use, the user feedback the API is cumbersome to use. The 
> best way is to provide a configurable NetworkInterface API, so if the IP is 
> not found, we can change the NetworkInterface.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-141) Remove the requirement to provide localHostIP

2020-05-22 Thread viviel (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113975#comment-17113975
 ] 

viviel commented on TUBEMQ-141:
---

I sorted out the general process.
After referring to the previous tboy's comments and viewing the source code of 
other related projects, I found that the general idea is similar

1. Obtain all local Network interface information
2. Traverse the IP information bound to each Network interface
3. Exclude the loopback address and some private addresses

If none can be obtained, an exception will be thrown and handed over to the 
user for processing

In addition, two TubeClientConfig constructors will be overloaded to be 
compatible with the original logic

If there is no problem, I will follow this process to achieve

> Remove the requirement to provide localHostIP
> -
>
> Key: TUBEMQ-141
> URL: https://issues.apache.org/jira/browse/TUBEMQ-141
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: viviel
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: image-2020-05-21-20-54-37-013.png
>
>
> The initial requirement to provide localHostIP during initialization is 
> because we have multiple network cards and multiple IPs in our environment. 
> The initial implementation is to find the first IP from the specified 
> NetworkInterface and report it, but It is found that sometimes the specified 
> NetworkInterface is not configured with IP, so, we consider the user is 
> required to provide a local IP:
>  !image-2020-05-21-20-54-37-013.png! 
> After a period of use, the user feedback the API is cumbersome to use. The 
> best way is to provide a configurable NetworkInterface API, so if the IP is 
> not found, we can change the NetworkInterface.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (TUBEMQ-152) Modify the master.ini file's annotations

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang resolved TUBEMQ-152.
---
Fix Version/s: 0.5.0
   Resolution: Fixed

> Modify the master.ini file's annotations
> 
>
> Key: TUBEMQ-152
> URL: https://issues.apache.org/jira/browse/TUBEMQ-152
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: Guocheng Zhang
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> Found a configuration file with Chinese annotations that needs to be modified 
> to maintain consistent annotations:
> https://github.com/apache/incubator-tubemq/blob/master/tubemq-server/src/test/resource/master.ini



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (TUBEMQ-152) Modify the master.ini file's annotations

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang reassigned TUBEMQ-152:
-

Assignee: Guocheng Zhang

> Modify the master.ini file's annotations
> 
>
> Key: TUBEMQ-152
> URL: https://issues.apache.org/jira/browse/TUBEMQ-152
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: Guocheng Zhang
>Priority: Normal
>  Labels: pull-request-available
>
> Found a configuration file with Chinese annotations that needs to be modified 
> to maintain consistent annotations:
> https://github.com/apache/incubator-tubemq/blob/master/tubemq-server/src/test/resource/master.ini



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [incubator-tubemq] guangxuCheng merged pull request #92: [TUBEMQ-152] Modify the master.ini file's annotations

2020-05-22 Thread GitBox


guangxuCheng merged pull request #92:
URL: https://github.com/apache/incubator-tubemq/pull/92


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[jira] [Created] (TUBEMQ-153) update copyright notices year to 2020

2020-05-22 Thread Guangxu Cheng (Jira)
Guangxu Cheng created TUBEMQ-153:


 Summary: update copyright notices year to 2020
 Key: TUBEMQ-153
 URL: https://issues.apache.org/jira/browse/TUBEMQ-153
 Project: Apache TubeMQ
  Issue Type: Task
Reporter: Guangxu Cheng
Assignee: Guangxu Cheng






--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-152) Modify the master.ini file's annotations

2020-05-22 Thread ASF GitHub Bot (Jira)


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

ASF GitHub Bot updated TUBEMQ-152:
--
Labels: pull-request-available  (was: )

> Modify the master.ini file's annotations
> 
>
> Key: TUBEMQ-152
> URL: https://issues.apache.org/jira/browse/TUBEMQ-152
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Normal
>  Labels: pull-request-available
>
> Found a configuration file with Chinese annotations that needs to be modified 
> to maintain consistent annotations:
> https://github.com/apache/incubator-tubemq/blob/master/tubemq-server/src/test/resource/master.ini



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [incubator-tubemq] gosonzhang opened a new pull request #92: [TUBEMQ-152] Modify the master.ini file's annotations

2020-05-22 Thread GitBox


gosonzhang opened a new pull request #92:
URL: https://github.com/apache/incubator-tubemq/pull/92


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[jira] [Created] (TUBEMQ-152) Modify the master.ini file's annotations

2020-05-22 Thread Guocheng Zhang (Jira)
Guocheng Zhang created TUBEMQ-152:
-

 Summary: Modify the master.ini file's annotations
 Key: TUBEMQ-152
 URL: https://issues.apache.org/jira/browse/TUBEMQ-152
 Project: Apache TubeMQ
  Issue Type: Improvement
Reporter: Guocheng Zhang


Found a configuration file with Chinese annotations that needs to be modified 
to maintain consistent annotations:

https://github.com/apache/incubator-tubemq/blob/master/tubemq-server/src/test/resource/master.ini



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-150) Improve producer implementation - Support sending data to the specified partitions

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113940#comment-17113940
 ] 

Guocheng Zhang commented on TUBEMQ-150:
---

(y)

> Improve producer  implementation - Support sending data to the specified 
> partitions
> ---
>
> Key: TUBEMQ-150
> URL: https://issues.apache.org/jira/browse/TUBEMQ-150
> Project: Apache TubeMQ
>  Issue Type: Sub-task
>Reporter: Guo Jiwei
>Assignee: Guo Jiwei
>Priority: Normal
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-103) Substitute Chinese comments with English

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113937#comment-17113937
 ] 

Guocheng Zhang commented on TUBEMQ-103:
---

[~technoboy], you can assign the server module to [~luky116]

> Substitute Chinese comments with English
> 
>
> Key: TUBEMQ-103
> URL: https://issues.apache.org/jira/browse/TUBEMQ-103
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guo Jiwei
>Priority: Normal
>
> Background:
>We find that in some classes, we use Chinese comments for method or 
> business logic. This is not nice for diversity .  
> Suggestion:
>Find out the place that using Chinese and substitute it with English.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-97) Translate documents into English

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-97?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113936#comment-17113936
 ] 

Guocheng Zhang commented on TUBEMQ-97:
--

[~luky116]  Very welcome,  Very welcome, please refer to the [~technoboy]'s 
reply above


> Translate documents into English
> 
>
> Key: TUBEMQ-97
> URL: https://issues.apache.org/jira/browse/TUBEMQ-97
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guo Jiwei
>Priority: Normal
>
> 1. We have some documents under docs directory, but only in Chinese. We 
> decide to translate them into English. If someone is interested , please 
> choose one of them and comment at below in case of mistaken.
> {code:java}
> tubemq_basic_introduction_cn.md
> tubemq_clients_cn.md
> tubemq_console_introduction_cn.md
> tubemq_error_status_introduction_cn.md
> tubemq_perf_test_vs_Kafka_cn.md
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-138) Optimize core module test case code

2020-05-22 Thread viviel (Jira)


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

viviel updated TUBEMQ-138:
--
Fix Version/s: 0.5.0

> Optimize core module test case code
> ---
>
> Key: TUBEMQ-138
> URL: https://issues.apache.org/jira/browse/TUBEMQ-138
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: viviel
>Assignee: viviel
>Priority: Low
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> 1. Optimize the use of assertions
>  2. Fix possible null pointer exception
> {code:java}
> SSLEngine sslEngine = null;
> try {
> // create engine
> sslEngine = TSSLEngineUtil.createSSLEngine(keyStorePath, trustStorePath,
> keyStorePassword, trustStorePassword, true, false);
> } catch (Throwable e) {
> e.printStackTrace();
> }
> // If the above code is a field, it may cause the object sslEngine is null
> boolean needClientAuth = sslEngine.getNeedClientAuth();
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (TUBEMQ-108) About maven jdk version configuration problem

2020-05-22 Thread viviel (Jira)


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

viviel closed TUBEMQ-108.
-

> About maven jdk version configuration problem
> -
>
> Key: TUBEMQ-108
> URL: https://issues.apache.org/jira/browse/TUBEMQ-108
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: viviel
>Assignee: viviel
>Priority: Minor
> Fix For: 0.5.0
>
>
> hi:
> [~gosonzhang], [~technoboy]
> I found some problems with the current maven jdk version configuration. For 
> the 1.8 syntax, it can be compiled, but there will be problems during runtime.
> for example:
> The core module uses the syntax of 1.8. If you refer to the method that is 
> only available in 1.8, it can be compiled. However, because the server is 
> configured with the syntax of 1.7, when the server is running on jdk1.7, it 
> will caused method not found errors because it depends on the core module.
> In response to this problem, please ask [~gosonzhang] to determine the 
> specific jdk running version of the server and client module, so as to make 
> corresponding adjustments to the maven configuration. When the syntax is 
> wrong, you can find and solve the problem in time during compilation



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (TUBEMQ-127) Fixed a bug & minor changes

2020-05-22 Thread viviel (Jira)


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

viviel closed TUBEMQ-127.
-

> Fixed a bug & minor changes
> ---
>
> Key: TUBEMQ-127
> URL: https://issues.apache.org/jira/browse/TUBEMQ-127
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: viviel
>Assignee: viviel
>Priority: Low
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> 1. Fixed a bug
> Syntax error
> {code:java}
> map.keySet().iterator(); (1.8 syntax) -> new 
> ArrayList<>(map.keySet()).iterator();
> {code}
> 2. Minor changes
> {code:java}
> if (curToken != null && curToken == usedToken) {
> return true;
> }
> change to
> return curToken != null && curToken == usedToken;
> {code}
> {code:java}
> if (isReged == null) {
> return true;
> }
> change to
> return isReged == null;
> {code}
> {code:java}
> List partKeys = new ArrayList<>();
> partKeys.addAll(partitionUsedMap.keySet());
> change to
> List partKeys = new ArrayList<>(partitionUsedMap.keySet());
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (TUBEMQ-102) Fix question [TUBEMQ-101] [Optimize code]

2020-05-22 Thread viviel (Jira)


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

viviel closed TUBEMQ-102.
-

> Fix question [TUBEMQ-101] [Optimize code]
> -
>
> Key: TUBEMQ-102
> URL: https://issues.apache.org/jira/browse/TUBEMQ-102
> Project: Apache TubeMQ
>  Issue Type: Bug
>Reporter: viviel
>Assignee: viviel
>Priority: Major
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> Because the core module uses jdk1.7, this code cannot use 'putIfAbsent'
> {code:java}
> addrMap4Failover.putIfAbsent(tmpNodeAddrInfo.getHostPortStr(), 
> tmpNodeAddrInfo);
> {code}
> We should use the original
> {code:java}
> if (addrMap4Failover.get(tmpNodeAddrInfo.getHostPortStr()) == null) {
> addrMap4Failover.put(tmpNodeAddrInfo.getHostPortStr(), tmpNodeAddrInfo);
> }
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-72) Support Kafka Compatible Protocol in TubeMQ

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-72?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113867#comment-17113867
 ] 

Guocheng Zhang commented on TUBEMQ-72:
--

After analyzing the implementation of Kafka, TubeMQ cannot directly apply 
Kafka's protocol. The main reason is that kafka uses a decentralized server 
model, while TubeMQ has central nodes, and the related management and control 
information is isolated in the Broker

However, we will implement similar operations in the future, such as providing 
a similar operation interface on the central nodes of TubeMQ, and completing 
the access of different MQ protocols through the Proxy node of TubeMQ.

> Support Kafka Compatible Protocol in TubeMQ
> ---
>
> Key: TUBEMQ-72
> URL: https://issues.apache.org/jira/browse/TUBEMQ-72
> Project: Apache TubeMQ
>  Issue Type: New Feature
>Reporter: Junping Du
>Priority: Major
>
> The Kafka protocol is general used in MQ area, and Apache Pulsar (another MQ) 
> did work to support it. TubeMQ should do the same thing - given there are 
> only six core client requests APIs.
> *Metadata* - Describes the currently available brokers, their host and port 
> information, and gives information about which broker hosts which partitions.
> *Send* - Send messages to a broker
> *Fetch* - Fetch messages from a broker, one which fetches data, one which 
> gets cluster metadata, and one which gets offset information about a topic.
> *Offsets* - Get information about the available offsets for a given topic 
> partition.
> *Offset Commit* - Commit a set of offsets for a consumer group
> *Offset Fetch* - Fetch a set of offsets for a consumer group



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (TUBEMQ-102) Fix question [TUBEMQ-101] [Optimize code]

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang resolved TUBEMQ-102.
---
Resolution: Fixed

> Fix question [TUBEMQ-101] [Optimize code]
> -
>
> Key: TUBEMQ-102
> URL: https://issues.apache.org/jira/browse/TUBEMQ-102
> Project: Apache TubeMQ
>  Issue Type: Bug
>Reporter: viviel
>Assignee: viviel
>Priority: Major
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> Because the core module uses jdk1.7, this code cannot use 'putIfAbsent'
> {code:java}
> addrMap4Failover.putIfAbsent(tmpNodeAddrInfo.getHostPortStr(), 
> tmpNodeAddrInfo);
> {code}
> We should use the original
> {code:java}
> if (addrMap4Failover.get(tmpNodeAddrInfo.getHostPortStr()) == null) {
> addrMap4Failover.put(tmpNodeAddrInfo.getHostPortStr(), tmpNodeAddrInfo);
> }
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-69) TubeMQ needs to provide API to cleanup consume group register info.

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-69:
-
Parent: TUBEMQ-113
Issue Type: Sub-task  (was: Improvement)

> TubeMQ needs to provide API to cleanup consume group register info.
> ---
>
> Key: TUBEMQ-69
> URL: https://issues.apache.org/jira/browse/TUBEMQ-69
> Project: Apache TubeMQ
>  Issue Type: Sub-task
>Reporter: Guocheng Zhang
>Priority: Major
>
> Currently, TubeMQ maintains consume group information through the client's 
> active unregister and registration timeout mechanism on the master side. If 
> the client in the consume group or consume group quits unexpectedly without 
> logging out, the consume group or client needs to wait for the server to time 
> out before re-registering successfully. Can an API interface be provided to 
> allow clients to clean up expired consume registration information to 
> facilitate rapid clients registration?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-69) TubeMQ needs to provide API to cleanup consume group register info.

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-69?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113860#comment-17113860
 ] 

Guocheng Zhang commented on TUBEMQ-69:
--

Yes, if this function is provided to allow the client to clean up the current 
registration status and consumption records of the consumer group,  if the user 
does not know, or the code implementation has a bug, how to ensure system 
stability will be a problem. So it will be considered in TUBEMQ-113 to allow 
users managing partitions independently.

> TubeMQ needs to provide API to cleanup consume group register info.
> ---
>
> Key: TUBEMQ-69
> URL: https://issues.apache.org/jira/browse/TUBEMQ-69
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
>
> Currently, TubeMQ maintains consume group information through the client's 
> active unregister and registration timeout mechanism on the master side. If 
> the client in the consume group or consume group quits unexpectedly without 
> logging out, the consume group or client needs to wait for the server to time 
> out before re-registering successfully. Can an API interface be provided to 
> allow clients to clean up expired consume registration information to 
> facilitate rapid clients registration?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-119) Independent optimization features

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113846#comment-17113846
 ] 

Guocheng Zhang commented on TUBEMQ-119:
---

[~technoboy] can you talk about your reasons and ideas in detail?

> Independent optimization features
> -
>
> Key: TUBEMQ-119
> URL: https://issues.apache.org/jira/browse/TUBEMQ-119
> Project: Apache TubeMQ
>  Issue Type: Task
>Reporter: Guocheng Zhang
>Priority: Major
>  Labels: features
>
>   
> 1. Support the cleaning of consumer group information: including zk 
> information, broker memory information, etc .;
>   
> 2. Support topics to specify different data disk requirements: for the 
> consideration of subsequent single disk storage, provision of space is 
> required for the mapping of different topics to different disks.
>   
> 3. HTTP API interface request parameters: In the current Master and Broker 
> http requests, the parameter check is too complicated, if there is a better 
> way to implement the parameter check, it is better
>   
> 4. Index statistics: Index output should be necessary, but it should be index 
> statistics on key information;
>   
> 5. Log optimization: The log output should be redesigned. For some content, 
> it should be possible to carry the necessary information through a keyword, 
> print less, and locate the problem at the same time
>   
> 6. Unit testing: functional modification should be forced to have the 
> construction and verification of unit test cases, so that the built system 
> can introduce as few problems as possible
>   
> 7. Resource monitoring: monitoring and flow control of key resources such as 
> memory, cpu, and disk capacity
>   
> 8. Separation of system attributes and business attributes: the newly added 
> attributes of the message should not be added to the attributes of the 
> service for the increase of the system attributes
>   
> 9. Consider that this feature will affect the overall performance of the 
> system, and there are cases of repetitive wheels. This separate branch is 
> expanded according to external needs.
>   
> 10. Add unit test cases, new features need to increase unit testing, this 
> omission in the previous improvement



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-151) Related compatible revision tracking

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-151:
--
Description: 
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID 
Conents
  1. TUBEMQ-140 the ssdStoreId 
field in pb message definition, BdbGroupFlowCtrlEntity class definition

  was:
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. TUBEMQ-140  the ssdStoreId field in pb message 
definition, BdbGroupFlowCtrlEntity class definition


> Related compatible revision tracking
> 
>
> Key: TUBEMQ-151
> URL: https://issues.apache.org/jira/browse/TUBEMQ-151
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
>
> This Issue mainly tracks the adjustment requirements that need to be followed 
> by compatibility-related changes, and is modified when appropriate to 
> facilitate subsequent version optimization
> NO. ISSUE-ID 
> Conents
>   1. TUBEMQ-140 the 
> ssdStoreId field in pb message definition, BdbGroupFlowCtrlEntity class 
> definition



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-151) Related compatible revision tracking

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-151:
--
Description: 
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. TUBEMQ-140  the ssdStoreId field in pb message 
definition, BdbGroupFlowCtrlEntity class definition

  was:
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. TUBEMQ-140


> Related compatible revision tracking
> 
>
> Key: TUBEMQ-151
> URL: https://issues.apache.org/jira/browse/TUBEMQ-151
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
>
> This Issue mainly tracks the adjustment requirements that need to be followed 
> by compatibility-related changes, and is modified when appropriate to 
> facilitate subsequent version optimization
> NO. ISSUE-ID Conents
>   1. TUBEMQ-140  the ssdStoreId field in pb 
> message definition, BdbGroupFlowCtrlEntity class definition



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-151) Related compatible revision tracking

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-151:
--
Description: 
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. TUBEMQ-140

  was:
This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. 


> Related compatible revision tracking
> 
>
> Key: TUBEMQ-151
> URL: https://issues.apache.org/jira/browse/TUBEMQ-151
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
>
> This Issue mainly tracks the adjustment requirements that need to be followed 
> by compatibility-related changes, and is modified when appropriate to 
> facilitate subsequent version optimization
> NO. ISSUE-ID Conents
>   1. TUBEMQ-140



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (TUBEMQ-151) Related compatible revision tracking

2020-05-22 Thread Guocheng Zhang (Jira)
Guocheng Zhang created TUBEMQ-151:
-

 Summary: Related compatible revision tracking
 Key: TUBEMQ-151
 URL: https://issues.apache.org/jira/browse/TUBEMQ-151
 Project: Apache TubeMQ
  Issue Type: Improvement
Reporter: Guocheng Zhang


This Issue mainly tracks the adjustment requirements that need to be followed 
by compatibility-related changes, and is modified when appropriate to 
facilitate subsequent version optimization

NO. ISSUE-ID Conents
  1. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-126) Increase the unflushed data bytes control

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-126:
--
Parent: (was: TUBEMQ-78)
Issue Type: Improvement  (was: Sub-task)

> Increase the unflushed data bytes control
> -
>
> Key: TUBEMQ-126
> URL: https://issues.apache.org/jira/browse/TUBEMQ-126
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
> Attachments: screenshot-1.png
>
>
> Currently, there are unflushThreshold indicating the number of unwashed disks 
> and unflushInterval indicating the maximum interval of unwashed disks. 
> Through analysis, data flushing check should increase the unflushed data 
> bytes control:
>  !screenshot-1.png! 
> The unflushed indicators are setted to threshold to monitor and make the 
> possibility of data loss of within the controllable range, but the time 
> interval and the number of messages are not enough, for example, the same 
> 1000 messages, in the case of a 100-byte message and a 512K-byte message, we 
> not only need to check the number of entries, but also need to check the 
> accumulated total data size of the unwashed disk
> For this problem, the new version plans to adjust to increase the 
> unflushDataSize indicator.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (TUBEMQ-126) Increase the unflushed data bytes control

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang updated TUBEMQ-126:
--
Parent: TUBEMQ-110
Issue Type: Sub-task  (was: Improvement)

> Increase the unflushed data bytes control
> -
>
> Key: TUBEMQ-126
> URL: https://issues.apache.org/jira/browse/TUBEMQ-126
> Project: Apache TubeMQ
>  Issue Type: Sub-task
>Reporter: Guocheng Zhang
>Priority: Major
> Attachments: screenshot-1.png
>
>
> Currently, there are unflushThreshold indicating the number of unwashed disks 
> and unflushInterval indicating the maximum interval of unwashed disks. 
> Through analysis, data flushing check should increase the unflushed data 
> bytes control:
>  !screenshot-1.png! 
> The unflushed indicators are setted to threshold to monitor and make the 
> possibility of data loss of within the controllable range, but the time 
> interval and the number of messages are not enough, for example, the same 
> 1000 messages, in the case of a 100-byte message and a 512K-byte message, we 
> not only need to check the number of entries, but also need to check the 
> accumulated total data size of the unwashed disk
> For this problem, the new version plans to adjust to increase the 
> unflushDataSize indicator.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-141) Remove the requirement to provide localHostIP

2020-05-22 Thread Guocheng Zhang (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113830#comment-17113830
 ] 

Guocheng Zhang commented on TUBEMQ-141:
---

Need to consider, but I think that it is preferable to report IPV4 address.

> Remove the requirement to provide localHostIP
> -
>
> Key: TUBEMQ-141
> URL: https://issues.apache.org/jira/browse/TUBEMQ-141
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Assignee: viviel
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: image-2020-05-21-20-54-37-013.png
>
>
> The initial requirement to provide localHostIP during initialization is 
> because we have multiple network cards and multiple IPs in our environment. 
> The initial implementation is to find the first IP from the specified 
> NetworkInterface and report it, but It is found that sometimes the specified 
> NetworkInterface is not configured with IP, so, we consider the user is 
> required to provide a local IP:
>  !image-2020-05-21-20-54-37-013.png! 
> After a period of use, the user feedback the API is cumbersome to use. The 
> best way is to provide a configurable NetworkInterface API, so if the IP is 
> not found, we can change the NetworkInterface.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (TUBEMQ-140) Remove the SSD auxiliary consumption function

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang resolved TUBEMQ-140.
---
Fix Version/s: 0.5.0
   Resolution: Fixed

> Remove the SSD auxiliary consumption function
> -
>
> Key: TUBEMQ-140
> URL: https://issues.apache.org/jira/browse/TUBEMQ-140
> Project: Apache TubeMQ
>  Issue Type: Sub-task
>Reporter: Guocheng Zhang
>Assignee: Guocheng Zhang
>Priority: Major
>  Labels: pull-request-available
> Fix For: 0.5.0
>
>
> 5. Remove the SSD auxiliary consumption function: Because the SSD disk 
> capacity is too small, the SSD storage consumption is not suitable for 
> practical applications, so it should be removed to avoid user confusion, and 
> related configurations and settings need to be cleaned up;
> -
> We found in actual tests that due to the small SSD capacity, when the disk IO 
> surged to 100%, the auxiliary effect was not good. We actually use extended 
> cluster computers to solve this problem, so this part is outdated and the 
> relevant code needs to be removed to avoid interference



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (TUBEMQ-139) a bug in the equals method of the TubeClientConfig class

2020-05-22 Thread Guocheng Zhang (Jira)


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

Guocheng Zhang resolved TUBEMQ-139.
---
Resolution: Fixed

> a bug in the equals method of the TubeClientConfig class
> 
>
> Key: TUBEMQ-139
> URL: https://issues.apache.org/jira/browse/TUBEMQ-139
> Project: Apache TubeMQ
>  Issue Type: Bug
>Reporter: Guocheng Zhang
>Assignee: Guocheng Zhang
>Priority: Major
>  Labels: pull-request-available
> Fix For: 0.5.0
>
> Attachments: image-2020-05-21-10-27-25-938.png, 
> image-2020-05-21-10-28-10-332.png
>
>
> There is a bug in the equals method of the TubeClientConfig class:
>  !image-2020-05-21-10-27-25-938.png! 
> it should be:
>  !image-2020-05-21-10-28-10-332.png! 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-119) Independent optimization features

2020-05-22 Thread Guo Jiwei (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113816#comment-17113816
 ] 

Guo Jiwei commented on TUBEMQ-119:
--

For Log optimization, we should remove StringBuilder from the codes everywhere.

> Independent optimization features
> -
>
> Key: TUBEMQ-119
> URL: https://issues.apache.org/jira/browse/TUBEMQ-119
> Project: Apache TubeMQ
>  Issue Type: Task
>Reporter: Guocheng Zhang
>Priority: Major
>  Labels: features
>
>   
> 1. Support the cleaning of consumer group information: including zk 
> information, broker memory information, etc .;
>   
> 2. Support topics to specify different data disk requirements: for the 
> consideration of subsequent single disk storage, provision of space is 
> required for the mapping of different topics to different disks.
>   
> 3. HTTP API interface request parameters: In the current Master and Broker 
> http requests, the parameter check is too complicated, if there is a better 
> way to implement the parameter check, it is better
>   
> 4. Index statistics: Index output should be necessary, but it should be index 
> statistics on key information;
>   
> 5. Log optimization: The log output should be redesigned. For some content, 
> it should be possible to carry the necessary information through a keyword, 
> print less, and locate the problem at the same time
>   
> 6. Unit testing: functional modification should be forced to have the 
> construction and verification of unit test cases, so that the built system 
> can introduce as few problems as possible
>   
> 7. Resource monitoring: monitoring and flow control of key resources such as 
> memory, cpu, and disk capacity
>   
> 8. Separation of system attributes and business attributes: the newly added 
> attributes of the message should not be added to the attributes of the 
> service for the increase of the system attributes
>   
> 9. Consider that this feature will affect the overall performance of the 
> system, and there are cases of repetitive wheels. This separate branch is 
> expanded according to external needs.
>   
> 10. Add unit test cases, new features need to increase unit testing, this 
> omission in the previous improvement



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (TUBEMQ-69) TubeMQ needs to provide API to cleanup consume group register info.

2020-05-22 Thread Guo Jiwei (Jira)


[ 
https://issues.apache.org/jira/browse/TUBEMQ-69?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17113813#comment-17113813
 ] 

Guo Jiwei commented on TUBEMQ-69:
-

If re-registering consumer-group override the master side, does it trigger some 
other issues?

> TubeMQ needs to provide API to cleanup consume group register info.
> ---
>
> Key: TUBEMQ-69
> URL: https://issues.apache.org/jira/browse/TUBEMQ-69
> Project: Apache TubeMQ
>  Issue Type: Improvement
>Reporter: Guocheng Zhang
>Priority: Major
>
> Currently, TubeMQ maintains consume group information through the client's 
> active unregister and registration timeout mechanism on the master side. If 
> the client in the consume group or consume group quits unexpectedly without 
> logging out, the consume group or client needs to wait for the server to time 
> out before re-registering successfully. Can an API interface be provided to 
> allow clients to clean up expired consume registration information to 
> facilitate rapid clients registration?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (TUBEMQ-150) Improve producer implementation - Support sending data to the specified partitions

2020-05-22 Thread Guo Jiwei (Jira)


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

Guo Jiwei reassigned TUBEMQ-150:


Assignee: Guo Jiwei

> Improve producer  implementation - Support sending data to the specified 
> partitions
> ---
>
> Key: TUBEMQ-150
> URL: https://issues.apache.org/jira/browse/TUBEMQ-150
> Project: Apache TubeMQ
>  Issue Type: Sub-task
>Reporter: Guo Jiwei
>Assignee: Guo Jiwei
>Priority: Normal
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (TUBEMQ-150) Improve producer implementation - Support sending data to the specified partitions

2020-05-22 Thread Guo Jiwei (Jira)
Guo Jiwei created TUBEMQ-150:


 Summary: Improve producer  implementation - Support sending data 
to the specified partitions
 Key: TUBEMQ-150
 URL: https://issues.apache.org/jira/browse/TUBEMQ-150
 Project: Apache TubeMQ
  Issue Type: Sub-task
Reporter: Guo Jiwei






--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [incubator-tubemq] lamberliu merged pull request #91: [TUBEMQ-149]Some of the consumers stop consuming their corresponding partitions and never release the partition to others

2020-05-22 Thread GitBox


lamberliu merged pull request #91:
URL: https://github.com/apache/incubator-tubemq/pull/91


   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org