You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Leif Hedstrom (JIRA)" <ji...@apache.org> on 2013/12/06 05:27:38 UTC

[jira] [Commented] (TS-2352) new_IOBufferData_internal() can't be used outside of event threads.

    [ https://issues.apache.org/jira/browse/TS-2352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13840961#comment-13840961 ] 

Leif Hedstrom commented on TS-2352:
-----------------------------------

So this looks like it's finished? I'm marking this as 4.2.0, please close if it's done.

> new_IOBufferData_internal() can't be used outside of event threads.
> -------------------------------------------------------------------
>
>                 Key: TS-2352
>                 URL: https://issues.apache.org/jira/browse/TS-2352
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Yunkai Zhang
>            Assignee: Yunkai Zhang
>             Fix For: 4.2.0
>
>         Attachments: 0001-TS-2352-refine-THREAD_ALLOC-feature.patch
>
>
> My coworkers([~weijin] and [~happy_fish100]) are merging the code of cluster refine to master branch.
> But they found that new_IOBufferData_internal() in the new cluster threads are crashing after merged into master branch.
> The reason is that new_IOBufferData_internal() was changed by this commit:
> {code}
> commit 052da6724140c1a4721c5cf3f9b64810ab4444b8
> Author: Bryan Call <bc...@apache.org>
> Date:   Mon Jun 17 14:13:07 2013 -0700
>     TS-1684 - Added more ProxyAllocators for faster and local memory
>     allocation.  Have seen a doubling in performance depending on the benchmark.
>     Details in the ticket.
> ...
> @@ -352,7 +352,7 @@ new_IOBufferBlock_internal(
>  #endif
>    )
>  {
> -  IOBufferBlock *b = ioBlockAllocator.alloc();
> +  IOBufferBlock *b = THREAD_ALLOC(ioBlockAllocator, this_ethread());
>  ...
>  }
> {code}
> After this commit, new_IOBufferData_internal() depends on *event threads* and can't be used by other normal threads.
> I'm going to refine  this function.



--
This message was sent by Atlassian JIRA
(v6.1#6144)