[jira] [Created] (ROCKETMQ-280) improve dependency management in parent pom

2017-08-24 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-280:
---

 Summary: improve dependency management in parent pom 
 Key: ROCKETMQ-280
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-280
 Project: Apache RocketMQ
  Issue Type: Improvement
  Components: build
Affects Versions: 4.1.0-incubating
 Environment: compile
Reporter: Eason Chen
Assignee: Stevens Chew
Priority: Minor
 Fix For: 4.2.0-incubating



{code:java}
as is:

org.apache.rocketmq
rocketmq-filter
${project.version}


to be:

${project.groupId}
rocketmq-filter
${project.version}


${project.groupId}
rocketmq-openmessaging
${project.version}

{code}




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


[jira] [Updated] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-28 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-242:

Description: 
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=

{panel:title=My title}
Some text with a title
{panel}


  was:
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=


{code:java}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
try {

MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
} catch (Exception e) {
log.error("ScheduledTask fetchNameServerAddr 
exception", e);
}
}
}, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
}
{code}




> mqclient can not fetch nameSrvAddr periodly
> ---
>
> Key: ROCKETMQ-242
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-242
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-client
>Affects Versions: 4.0.0-incubating, 4.1.0-incubating
> Environment: test and production
>Reporter: Eason Chen
>Assignee: Xiaorui Wang
> Fix For: 4.2.0-incubating
>
>
> when mqclientinstance start, it getNameSrvAddr once by bellow code:
>  if (null == this.clientConfig.getNamesrvAddr()) {
> 
> this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
> }
> but in startScheduledTask(),it will not start the schedule task if 
> namesrvAddr is not null
> code=
> {panel:title=My title}
> Some text with a title
> {panel}



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


[jira] [Updated] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-28 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-242:

Description: 
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=


{code:java}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
try {

MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
} catch (Exception e) {
log.error("ScheduledTask fetchNameServerAddr 
exception", e);
}
}
}, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
}
{code}



  was:
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=

{panel:title=My title}
Some text with a title
{panel}



> mqclient can not fetch nameSrvAddr periodly
> ---
>
> Key: ROCKETMQ-242
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-242
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-client
>Affects Versions: 4.0.0-incubating, 4.1.0-incubating
> Environment: test and production
>Reporter: Eason Chen
>Assignee: Xiaorui Wang
> Fix For: 4.2.0-incubating
>
>
> when mqclientinstance start, it getNameSrvAddr once by bellow code:
>  if (null == this.clientConfig.getNamesrvAddr()) {
> 
> this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
> }
> but in startScheduledTask(),it will not start the schedule task if 
> namesrvAddr is not null
> code=
> {code:java}
> public void start() throws MQClientException {
> synchronized (this) {
> switch (this.serviceState) {
> case CREATE_JUST:
> this.serviceState = ServiceState.START_FAILED;
> // If not specified,looking address from name server
>*{color:red} if (null == 
> this.clientConfig.getNamesrvAddr()) {
> 
> this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
> }{color}*
> // Start request-response channel
> this.mQClientAPIImpl.start();
> // Start various schedule tasks
> this.startScheduledTask();
> // Start pull service
>

[jira] [Updated] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-28 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-242:

Description: 
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=


{code:java}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
try {

MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
} catch (Exception e) {
log.error("ScheduledTask fetchNameServerAddr 
exception", e);
}
}
}, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
}
{code}



  was:


when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=
{code:java}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

   

[jira] [Updated] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-28 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-242:

Description: 


when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=
{code:java}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
try {

MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
} catch (Exception e) {
log.error("ScheduledTask fetchNameServerAddr 
exception", e);
}
}
}, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
}
{code}

  was:
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=
{code}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {


[jira] [Updated] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-28 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-242:

Description: 
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=
{code}
public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
try {

MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
} catch (Exception e) {
log.error("ScheduledTask fetchNameServerAddr 
exception", e);
}
}
}, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
}
{code}

  was:
when mqclientinstance start, it getNameSrvAddr once by bellow code:
 if (null == this.clientConfig.getNamesrvAddr()) {

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}

but in startScheduledTask(),it will not start the schedule task if namesrvAddr 
is not null

code=

public void start() throws MQClientException {

synchronized (this) {
switch (this.serviceState) {
case CREATE_JUST:
this.serviceState = ServiceState.START_FAILED;
// If not specified,looking address from name server
   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) 
{

this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
}{color}*
// Start request-response channel
this.mQClientAPIImpl.start();
// Start various schedule tasks
this.startScheduledTask();
// Start pull service
this.pullMessageService.start();
// Start rebalance service
this.rebalanceService.start();
// Start push service

this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
log.info("the client factory [{}] start OK", this.clientId);
this.serviceState = ServiceState.RUNNING;
break;
case RUNNING:
break;
case SHUTDOWN_ALREADY:
break;
case START_FAILED:
throw new MQClientException("The Factory object[" + 
this.getClientId() + "] has been created before, and failed.", null);
default:
break;
}
}
}

private void startScheduledTask() {
  *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {


[jira] [Created] (ROCKETMQ-250) fix fetchNSAddr error when it refer to jmenv.tbsite.net

2017-07-26 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-250:
---

 Summary: fix fetchNSAddr error when it refer to jmenv.tbsite.net
 Key: ROCKETMQ-250
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-250
 Project: Apache RocketMQ
  Issue Type: Improvement
  Components: rocketmq-commons
Affects Versions: 4.1.0-incubating
 Environment: test and production
Reporter: Eason Chen
Assignee: Jixiang Jin
 Fix For: 4.2.0-incubating


jmenv.tbsite.net may can not be reached in inner envirment  when find it 
periodly
we can return null when application does not set the new wsAddr.

public final String fetchNSAddr(boolean verbose, long timeoutMills) {
String url = this.wsAddr;
try {
if (this.wsAddr.equals(MixAll.WS_ADDR)) {
return null;
}
if (!UtilAll.isBlank(this.unitName)) {
url = url + "-" + this.unitName + "?nofix=1";
}
HttpTinyClient.HttpResult result = HttpTinyClient.httpGet(url, 
null, null, "UTF-8", timeoutMills);
if (200 == result.code) {
String responseStr = result.content;
if (responseStr != null) {
return clearNewLine(responseStr);
} else {
log.error("fetch nameserver address is null");
}
} else {
log.error("fetch nameserver address failed. statusCode={}", 
result.code);
}
} catch (IOException e) {
if (verbose) {
log.error("fetch name server address exception", e);
}
}

if (verbose) {
String errorMsg =
"connect to " + url + " failed, maybe the domain name " + 
MixAll.getWSAddr() + " not bind in /etc/hosts";
errorMsg += 
FAQUrl.suggestTodo(FAQUrl.NAME_SERVER_ADDR_NOT_EXIST_URL);

log.warn(errorMsg);
}
return null;
}



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


[jira] [Commented] (ROCKETMQ-242) mqclient can not fetch nameSrvAddr periodly

2017-07-26 Thread Eason Chen (JIRA)

[ 
https://issues.apache.org/jira/browse/ROCKETMQ-242?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16101336#comment-16101336
 ] 

Eason Chen commented on ROCKETMQ-242:
-

What if the specified namesrv is down and changed to another ip address? and 
the client can change namesrv dynamic and do not need to restart.

> mqclient can not fetch nameSrvAddr periodly
> ---
>
> Key: ROCKETMQ-242
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-242
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-client
>Affects Versions: 4.0.0-incubating, 4.1.0-incubating
> Environment: test and production
>Reporter: Eason Chen
>Assignee: Xiaorui Wang
> Fix For: 4.2.0-incubating
>
>
> when mqclientinstance start, it getNameSrvAddr once by bellow code:
>  if (null == this.clientConfig.getNamesrvAddr()) {
> 
> this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
> }
> but in startScheduledTask(),it will not start the schedule task if 
> namesrvAddr is not null
> code=
> public void start() throws MQClientException {
> synchronized (this) {
> switch (this.serviceState) {
> case CREATE_JUST:
> this.serviceState = ServiceState.START_FAILED;
> // If not specified,looking address from name server
>*{color:red} if (null == 
> this.clientConfig.getNamesrvAddr()) {
> 
> this.clientConfig.setNamesrvAddr(this.mQClientAPIImpl.fetchNameServerAddr());
> }{color}*
> // Start request-response channel
> this.mQClientAPIImpl.start();
> // Start various schedule tasks
> this.startScheduledTask();
> // Start pull service
> this.pullMessageService.start();
> // Start rebalance service
> this.rebalanceService.start();
> // Start push service
> 
> this.defaultMQProducer.getDefaultMQProducerImpl().start(false);
> log.info("the client factory [{}] start OK", 
> this.clientId);
> this.serviceState = ServiceState.RUNNING;
> break;
> case RUNNING:
> break;
> case SHUTDOWN_ALREADY:
> break;
> case START_FAILED:
> throw new MQClientException("The Factory object[" + 
> this.getClientId() + "] has been created before, and failed.", null);
> default:
> break;
> }
> }
> }
> private void startScheduledTask() {
>   *{color:red} if (null == this.clientConfig.getNamesrvAddr()) {{color}*
> this.scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
> @Override
> public void run() {
> try {
> 
> MQClientInstance.this.mQClientAPIImpl.fetchNameServerAddr();
> } catch (Exception e) {
> log.error("ScheduledTask fetchNameServerAddr 
> exception", e);
> }
> }
> }, 1000 * 10, 1000 * 60 * 2, TimeUnit.MILLISECONDS);
> }



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


[jira] [Created] (ROCKETMQ-205) change the port of broker and restart it, but client still connect to previous port also

2017-05-24 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-205:
---

 Summary: change the port of broker and restart it, but client 
still connect to previous port also
 Key: ROCKETMQ-205
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-205
 Project: Apache RocketMQ
  Issue Type: Bug
Reporter: Eason Chen
Assignee: vongosling


we start a broker and listen on 10911, client listen on it correctly

then we change the port to 10915 and restart it

client connect to 10915 correctly
 
but still try to connect to 10911 and failed

seems client did not update the broker address correctly



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-169) Support flow control when slave restarts and replicating from master

2017-04-10 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-169:
---

 Summary: Support flow control when slave restarts and replicating 
from master
 Key: ROCKETMQ-169
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-169
 Project: Apache RocketMQ
  Issue Type: Improvement
  Components: rocketmq-broker
Affects Versions: 4.0.0-incubating
Reporter: Eason Chen
Assignee: yukon


as we know slave replicates message from master, but when slave restarts the 
replicating will cause huge traffic which will impact sending messages, so we 
suggest supporting flow control for slave when restarts.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (ROCKETMQ-164) findMappedFileByOffset failure, ArrayIndexOutOfBoundsException: -143

2017-04-06 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-164:

Description: 
we use sync_master and slave, when slave left behind from master too long and 
then hit this exception when restart again maybe because comitlog has been 
deleted.
wo suggest handle this exception.   

2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
java.lang.ArrayIndexOutOfBoundsException: -143
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
~[na:1.8.0_121]
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
~[na:1.8.0_121]
at 
org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
 ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
 [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at .
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
 [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
[rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
2017-03-24 09:55:25 WARN PullMessageThread_26 - findMappedFileByOffset failure.

  was:
we use sync_master and slave, when slave left behind from master too long and 
then hit this exception when restart again maybe because comitlog has been 
deleted.
wo suggest handle this exception.   

2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
java.lang.ArrayIndexOutOfBoundsException: -143
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
~[na:1.8.0_121]
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
~[na:1.8.0_121]
at 
org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
 ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
 [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
cn.webank.wemq.broker.plugin.WeMQPluginMessageStore.getMessage(WeMQPluginMessageStore.java:62)
 [wemq-broker-1.0.0-jdk8-SNAPSHOT.jar:1.0.0-jdk8-SNAPSHOT]
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
 [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
[rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
2017-03-24 09:55:25 WARN 

[jira] [Created] (ROCKETMQ-164) findMappedFileByOffset failure, ArrayIndexOutOfBoundsException: -143

2017-04-06 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-164:
---

 Summary: findMappedFileByOffset failure, 
ArrayIndexOutOfBoundsException: -143
 Key: ROCKETMQ-164
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-164
 Project: Apache RocketMQ
  Issue Type: Bug
  Components: rocketmq-store
Affects Versions: 4.0.0-incubating
Reporter: Eason Chen
Assignee: yukon


we use sync_master and slave, when slave left behind from master too long and 
then hit this exception when restart again maybe because comitlog has been 
deleted.
wo suggest handle this exception.   

2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
java.lang.ArrayIndexOutOfBoundsException: -143
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
~[na:1.8.0_121]
at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
~[na:1.8.0_121]
at 
org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
 ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
 [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
cn.webank.wemq.broker.plugin.WeMQPluginMessageStore.getMessage(WeMQPluginMessageStore.java:62)
 [wemq-broker-1.0.0-jdk8-SNAPSHOT.jar:1.0.0-jdk8-SNAPSHOT]
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
 [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
[rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_121]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
2017-03-24 09:55:25 WARN PullMessageThread_26 - findMappedFileByOffset failure.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (ROCKETMQ-145) Hit ConcurrentModificationException in doWaitTransfer which happens very offen

2017-04-04 Thread Eason Chen (JIRA)

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

Eason Chen closed ROCKETMQ-145.
---
Resolution: Fixed

> Hit ConcurrentModificationException in doWaitTransfer which happens very offen
> --
>
> Key: ROCKETMQ-145
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-145
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-store
>Affects Versions: 4.0.0-incubating
>Reporter: Eason Chen
>Assignee: yukon
>
> we use master and slave , sync transfer and asyn flush, happens this very 
> offen: 
> 2017-03-17 20:12:38 WARN GroupTransferService - GroupTransferService service 
> has exception. 
> java.util.ConcurrentModificationException: null
> at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) 
> ~[na:1.8.0_121]
> at java.util.ArrayList$Itr.next(ArrayList.java:851) ~[na:1.8.0_121]
> at 
> org.apache.rocketmq.store.ha.HAService$GroupTransferService.doWaitTransfer(HAService.java:277)
>  ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
> at 
> org.apache.rocketmq.store.ha.HAService$GroupTransferService.run(HAService.java:301)
>  ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (ROCKETMQ-145) Hit ConcurrentModificationException in doWaitTransfer which happens very offen

2017-04-04 Thread Eason Chen (JIRA)

[ 
https://issues.apache.org/jira/browse/ROCKETMQ-145?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15956189#comment-15956189
 ] 

Eason Chen commented on ROCKETMQ-145:
-

seems fixed

> Hit ConcurrentModificationException in doWaitTransfer which happens very offen
> --
>
> Key: ROCKETMQ-145
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-145
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-store
>Affects Versions: 4.0.0-incubating
>Reporter: Eason Chen
>Assignee: yukon
>
> we use master and slave , sync transfer and asyn flush, happens this very 
> offen: 
> 2017-03-17 20:12:38 WARN GroupTransferService - GroupTransferService service 
> has exception. 
> java.util.ConcurrentModificationException: null
> at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) 
> ~[na:1.8.0_121]
> at java.util.ArrayList$Itr.next(ArrayList.java:851) ~[na:1.8.0_121]
> at 
> org.apache.rocketmq.store.ha.HAService$GroupTransferService.doWaitTransfer(HAService.java:277)
>  ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
> at 
> org.apache.rocketmq.store.ha.HAService$GroupTransferService.run(HAService.java:301)
>  ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
> at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (ROCKETMQ-146) Hit "port out of range:" in decodeMessageId happens sometimes

2017-04-04 Thread Eason Chen (JIRA)

[ 
https://issues.apache.org/jira/browse/ROCKETMQ-146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15956186#comment-15956186
 ] 

Eason Chen commented on ROCKETMQ-146:
-

yeah, we can fix it

> Hit "port out of range:" in decodeMessageId happens sometimes
> -
>
> Key: ROCKETMQ-146
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-146
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-client, rocketmq-commons
>Reporter: Eason Chen
>Assignee: yukon
> Attachments: {A99BE06A-745B-4FA8-859D-EFB6FB18E851}.png
>
>




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (ROCKETMQ-125) Support more intellective HA architecture

2017-04-04 Thread Eason Chen (JIRA)

[ 
https://issues.apache.org/jira/browse/ROCKETMQ-125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15956179#comment-15956179
 ] 

Eason Chen commented on ROCKETMQ-125:
-

Have this feature get started? or some discussion on it?

> Support more intellective HA architecture
> -
>
> Key: ROCKETMQ-125
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-125
> Project: Apache RocketMQ
>  Issue Type: Wish
>  Components: rocketmq-broker, rocketmq-store
>Reporter: yukon
>Priority: Minor
>
> RocketMQ uses master-slave as HA architecture, which has low latency and high 
> throughput features, but this program need human intervention to recover from 
> abnormal situations.
> So, we want to support a multi-replication high availability/reliability 
> mechanism, without human intervention.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (ROCKETMQ-151) Support one slave map to two master

2017-03-20 Thread Eason Chen (JIRA)

[ 
https://issues.apache.org/jira/browse/ROCKETMQ-151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15932514#comment-15932514
 ] 

Eason Chen commented on ROCKETMQ-151:
-

of course i can but network is not enough

> Support one slave map to two master
> ---
>
> Key: ROCKETMQ-151
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-151
> Project: Apache RocketMQ
>  Issue Type: Improvement
>Reporter: Eason Chen
>Assignee: vongosling
>
> since slave can not be used 100% ,but we do need it to backup message, it is 
> big waste to have so many slaves, so if it can let one slave map to two or 
> more master 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-151) Support one slave map to two master

2017-03-20 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-151:
---

 Summary: Support one slave map to two master
 Key: ROCKETMQ-151
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-151
 Project: Apache RocketMQ
  Issue Type: Improvement
Reporter: Eason Chen
Assignee: vongosling


since slave can not be used 100% ,but we do need it to backup message, it is 
big waste to have so many slaves, so if it can let one slave map to two or more 
master 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-150) Support both OuterIP and InnerIP

2017-03-20 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-150:
---

 Summary: Support both OuterIP and InnerIP
 Key: ROCKETMQ-150
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-150
 Project: Apache RocketMQ
  Issue Type: Wish
  Components: rocketmq-broker
Reporter: Eason Chen
Assignee: yukon


client connect to outer ip
broker listen on innerip
how to connect them is a problem



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-147) Support usrname+passwd authentication and ip+topic certification

2017-03-18 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-147:
---

 Summary: Support usrname+passwd authentication and ip+topic 
certification 
 Key: ROCKETMQ-147
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-147
 Project: Apache RocketMQ
  Issue Type: Wish
  Components: rocketmq-broker
Reporter: Eason Chen
Assignee: yukon


It will be very helpfull if support usrname+passwd authentication and ip+topic 
certification in production



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-146) Hit "port out of range:" in decodeMessageId happens sometimes

2017-03-17 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-146:
---

 Summary: Hit "port out of range:" in decodeMessageId happens 
sometimes
 Key: ROCKETMQ-146
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-146
 Project: Apache RocketMQ
  Issue Type: Bug
  Components: rocketmq-client, rocketmq-commons
Reporter: Eason Chen
Assignee: Xiaorui Wang
 Attachments: {A99BE06A-745B-4FA8-859D-EFB6FB18E851}.png





--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-145) Hit ConcurrentModificationException in doWaitTransfer which happens very offen

2017-03-17 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-145:
---

 Summary: Hit ConcurrentModificationException in doWaitTransfer 
which happens very offen
 Key: ROCKETMQ-145
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-145
 Project: Apache RocketMQ
  Issue Type: Bug
  Components: rocketmq-store
Affects Versions: 4.0.0-incubating
Reporter: Eason Chen
Assignee: yukon


we use master and slave , sync transfer and asyn flush, happens this very 
offen: 
2017-03-17 20:12:38 WARN GroupTransferService - GroupTransferService service 
has exception. 
java.util.ConcurrentModificationException: null
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) 
~[na:1.8.0_121]
at java.util.ArrayList$Itr.next(ArrayList.java:851) ~[na:1.8.0_121]
at 
org.apache.rocketmq.store.ha.HAService$GroupTransferService.doWaitTransfer(HAService.java:277)
 ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
at 
org.apache.rocketmq.store.ha.HAService$GroupTransferService.run(HAService.java:301)
 ~[rocketmq-store-4.0.0-incubating.jar:4.0.0-incubating]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (ROCKETMQ-130) Support depth control by topic level

2017-03-09 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-130:

Component/s: rocketmq-broker

> Support depth control by topic level
> 
>
> Key: ROCKETMQ-130
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-130
> Project: Apache RocketMQ
>  Issue Type: Improvement
>  Components: rocketmq-broker
>Reporter: Eason Chen
>Assignee: vongosling
>
> Faster producer topic will impact slower producer topic when they are in the 
> same broker, so we need depth control to limit the faster guy.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (ROCKETMQ-137) no longer pull message when clean expired message earlier than callback return CONSUME_SUCCESS because of flow control

2017-03-09 Thread Eason Chen (JIRA)

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

Eason Chen updated ROCKETMQ-137:

Attachment: QQ截图20170309181305.png
QQ截图20170309181223.png

> no longer pull message when clean expired message earlier than callback 
> return CONSUME_SUCCESS because of flow control
> --
>
> Key: ROCKETMQ-137
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-137
> Project: Apache RocketMQ
>  Issue Type: Bug
>  Components: rocketmq-client
>Affects Versions: 4.1.0-incubating
>Reporter: Eason Chen
>Assignee: Xiaorui Wang
> Attachments: QQ截图20170309181223.png, QQ截图20170309181305.png
>
>
> no longer pull message when clean expired message earlier than callback 
> return CONSUME_SUCCESS because of flow control



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-137) no longer pull message when clean expired message earlier than callback return CONSUME_SUCCESS because of flow control

2017-03-09 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-137:
---

 Summary: no longer pull message when clean expired message earlier 
than callback return CONSUME_SUCCESS because of flow control
 Key: ROCKETMQ-137
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-137
 Project: Apache RocketMQ
  Issue Type: Bug
  Components: rocketmq-client
Affects Versions: 4.1.0-incubating
Reporter: Eason Chen
Assignee: Xiaorui Wang


no longer pull message when clean expired message earlier than callback return 
CONSUME_SUCCESS because of flow control





--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-133) Support message ttl

2017-03-07 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-133:
---

 Summary: Support message ttl
 Key: ROCKETMQ-133
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-133
 Project: Apache RocketMQ
  Issue Type: Improvement
  Components: rocketmq-broker, rocketmq-store
Reporter: Eason Chen
Assignee: yukon


we do not need the message when it is time out,delete it automatically by broker



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-132) Support request/response invoke mode like sync RPC

2017-03-07 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-132:
---

 Summary: Support request/response invoke mode like sync RPC
 Key: ROCKETMQ-132
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-132
 Project: Apache RocketMQ
  Issue Type: Wish
Reporter: Eason Chen
Assignee: vongosling


Mostly business need to wait a response after send a request,just like sync RPC



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-131) Hit brief pause when delete expire file periodicity

2017-03-07 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-131:
---

 Summary: Hit brief pause when delete expire file periodicity
 Key: ROCKETMQ-131
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-131
 Project: Apache RocketMQ
  Issue Type: Bug
  Components: rocketmq-store
Reporter: Eason Chen
Assignee: yukon


Hit brief pause when delete expire file periodicity, meanwhile producer and 
consumer latency will become higher than normal



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-130) Support depth control by topic level

2017-03-07 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-130:
---

 Summary: Support depth control by topic level
 Key: ROCKETMQ-130
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-130
 Project: Apache RocketMQ
  Issue Type: Improvement
Reporter: Eason Chen
Assignee: vongosling


Faster producer topic will impact slower producer topic when they are in the 
same broker, so we need depth control to limit the faster guy.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (ROCKETMQ-128) Support HA switch automatically

2017-03-07 Thread Eason Chen (JIRA)
Eason Chen created ROCKETMQ-128:
---

 Summary: Support HA switch automatically
 Key: ROCKETMQ-128
 URL: https://issues.apache.org/jira/browse/ROCKETMQ-128
 Project: Apache RocketMQ
  Issue Type: Wish
  Components: rocketmq-broker
Affects Versions: 4.0.0-incubating
Reporter: Eason Chen
Assignee: yukon
 Fix For: 4.1.0-incubating


Ha is an very important feature in production , when server crash, how to keep 
continuity of business is the first job.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)