Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
FinClip
ligase
提交
877ea5cb
ligase
项目概览
FinClip
/
ligase
通知
33
Star
8
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ligase
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
877ea5cb
编写于
8月 18, 2017
作者:
M
Mark Haines
提交者:
GitHub
8月 18, 2017
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove StopProcessingAfter from the roomserver consumer as it is unused (#186)
上级
ba8b5d8b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
0 addition
and
24 deletion
+0
-24
src/github.com/matrix-org/dendrite/roomserver/input/input.go
src/github.com/matrix-org/dendrite/roomserver/input/input.go
+0
-24
未找到文件。
src/github.com/matrix-org/dendrite/roomserver/input/input.go
浏览文件 @
877ea5cb
...
...
@@ -17,9 +17,6 @@ package input
import
(
"encoding/json"
"fmt"
"sync/atomic"
"net/http"
"github.com/matrix-org/dendrite/common"
...
...
@@ -35,15 +32,6 @@ type RoomserverInputAPI struct {
// The kafkaesque topic to output new room events to.
// This is the name used in kafka to identify the stream to write events to.
OutputRoomEventTopic
string
// If non-nil then the API will stop processing messages after this
// many messages and will shutdown. Malformed messages are not in the count.
StopProcessingAfter
*
int64
// If not-nil then the API will call this to shutdown the server.
// If this is nil then the API will continue to process messsages even
// though StopProcessingAfter has been reached.
ShutdownCallback
func
(
reason
string
)
// How many messages the consumer has processed.
processed
int64
}
// WriteOutputEvents implements OutputRoomEventWriter
...
...
@@ -72,18 +60,6 @@ func (r *RoomserverInputAPI) InputRoomEvents(
if
err
:=
processRoomEvent
(
r
.
DB
,
r
,
request
.
InputRoomEvents
[
i
]);
err
!=
nil
{
return
err
}
// Update the number of processed messages using atomic addition because it is accessed from multiple goroutines.
processed
:=
atomic
.
AddInt64
(
&
r
.
processed
,
1
)
// Check if we should stop processing.
// Note that since we have multiple goroutines it's quite likely that we'll overshoot by a few messages.
// If we try to stop processing after M message and we have N goroutines then we will process somewhere
// between M and (N + M) messages because the N goroutines could all try to process what they think will be the
// last message. We could be more careful here but this is good enough for getting rough benchmarks.
if
r
.
StopProcessingAfter
!=
nil
&&
processed
>=
int64
(
*
r
.
StopProcessingAfter
)
{
if
r
.
ShutdownCallback
!=
nil
{
r
.
ShutdownCallback
(
fmt
.
Sprintf
(
"Stopping processing after %d messages"
,
r
.
processed
))
}
}
}
return
nil
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录