virusdefender
|
a15059c114
|
add kill proc
|
2015-09-17 23:14:02 +08:00 |
|
virusdefender
|
9df3ffa782
|
fix typo
|
2015-09-17 20:21:55 +08:00 |
|
virusdefender
|
83539c13ea
|
add c/c++ sys call filter
|
2015-09-17 19:56:51 +08:00 |
|
virusdefender
|
722d79a1c8
|
--isolate-process true
|
2015-09-17 18:09:14 +08:00 |
|
virusdefender
|
0f28c0e2ce
|
使用 superivisord 启动进程
|
2015-09-17 15:21:08 +08:00 |
|
virusdefender
|
878d71f60e
|
修复 celery 启动 docker 的时候 cannot enable tty mode on non tty input 的问题
|
2015-09-17 11:18:38 +08:00 |
|
virusdefender
|
e4533c9b76
|
更新 redis 环境变量
|
2015-09-17 09:44:31 +08:00 |
|
virusdefender
|
12e2c54aad
|
在环境变量中取数据库地址
|
2015-09-17 09:29:59 +08:00 |
|
virusdefender
|
cc138542b4
|
删除无用代码
|
2015-09-15 20:58:40 +08:00 |
|
virusdefender
|
2fe2d7b9cc
|
judger 增加数据库连接
|
2015-09-15 16:35:39 +08:00 |
|
virusdefender
|
bf2c41713a
|
更新设置
|
2015-09-15 13:14:46 +08:00 |
|
virusdefender
|
c648e0008f
|
修改配置文件方便区分不同的开发环境
|
2015-09-14 18:20:36 +08:00 |
|
virusdefender
|
93c03b541b
|
创建 docker 镜像的时候使用阿里云的源
|
2015-09-14 13:15:53 +08:00 |
|
virusdefender
|
4c5fdc8bdf
|
删除 judger_controller 的日志配置
|
2015-09-12 21:48:26 +08:00 |
|
virusdefender
|
0c0d4225ca
|
判题中输出结果的比较去除最后的空行和空格
|
2015-09-12 20:01:34 +08:00 |
|
virusdefender
|
1dc0e8b742
|
增加判题中的日志记录,没有测试
|
2015-09-12 19:21:43 +08:00 |
|
virusdefender
|
354bb0302a
|
修复链接的时候的警告导致的编译错误
|
2015-09-12 17:57:44 +08:00 |
|
virusdefender
|
162913746f
|
Accept Merge Request #173 : (dev-sxw -> dev)
|
2015-09-05 21:24:00 +08:00 |
|
sxw@401
|
49643c661a
|
添加宽松判题的client
|
2015-09-05 21:09:02 +08:00 |
|
lsxwxs
|
fc7f4ae3b7
|
对盘题系统针对新测试服务器进行调整,该分支将不会并入主分支[CI SKIP]
|
2015-09-03 00:41:36 +08:00 |
|
lsxwxs
|
6267b4d295
|
Merge branch 'for-contest' of git.coding.net:virusdefender/qduoj into for-contest
update
|
2015-09-03 00:29:15 +08:00 |
|
esp
|
69cc85eb01
|
correct the path of test case in judger
|
2015-09-03 00:28:34 +08:00 |
|
lsxwxs
|
5000bbc38f
|
原来的dockerimage里没有MySQL-python,所以又改了下[CI SKIP]
|
2015-09-02 23:03:05 +08:00 |
|
lsxwxs
|
eb376c49fc
|
漏了一个import[CI SKIP]
|
2015-09-02 22:59:43 +08:00 |
|
esp
|
655b18421e
|
这是为了能以root身份运行celery[CI SKIP]
|
2015-09-02 22:26:58 +08:00 |
|
esp
|
e4a5e4155b
|
为了在qduoj.cf上运行做了改动,因为判题和web都在一台机器上,这个docker image是从digitalOcean上download下来的[CI SKIP]
|
2015-09-02 20:26:55 +08:00 |
|
virusdefender
|
b54b0717f6
|
update docker file
|
2015-08-31 20:02:54 +08:00 |
|
virusdefender
|
e1256bf652
|
fix typo
|
2015-08-31 19:57:28 +08:00 |
|
virusdefender
|
a1b38d4a21
|
update docker name
|
2015-08-31 18:45:14 +08:00 |
|
virusdefender
|
dfe18495e4
|
update docker name
|
2015-08-31 18:43:30 +08:00 |
|
virusdefender
|
c528ab11fa
|
调试修改部分参数
|
2015-08-31 18:37:38 +08:00 |
|
virusdefender
|
70c64507cc
|
修改测试文件
|
2015-08-26 14:25:14 +08:00 |
|
virusdefender
|
c12c227ee9
|
使用 redis 消息队列来传递题目的结果。从而更新题目 ac 和 ts 计数器
|
2015-08-22 12:56:22 +08:00 |
|
virusdefender
|
fdf6b39c78
|
add message to mq
|
2015-08-22 12:31:28 +08:00 |
|
virusdefender
|
4b49fa5050
|
修改计数方式
|
2015-08-21 13:32:02 +08:00 |
|
virusdefender
|
e4ff9e642a
|
将队列长度计数器改为 redis 计数器
|
2015-08-21 13:25:30 +08:00 |
|
virusdefender
|
d8dd9cd72c
|
完成服务器判题队列长度监控功能
|
2015-08-20 13:47:57 +08:00 |
|
virusdefender
|
096873c028
|
增加队列长度统计信息
|
2015-08-19 16:39:04 +08:00 |
|
virusdefender
|
309eef710c
|
修改数据库地址
|
2015-08-17 12:58:13 +08:00 |
|
virusdefender
|
537da5d795
|
修改判题数据库
|
2015-08-17 12:48:10 +08:00 |
|
virusdefender
|
a36268bcc8
|
修改配置项目
|
2015-08-16 08:47:03 +08:00 |
|
virusdefender
|
a6bd787b86
|
修改 celery 配置文件格式
|
2015-08-15 23:46:25 +08:00 |
|
virusdefender
|
397927ef21
|
去除启动 docker 的超时
|
2015-08-15 17:52:07 +08:00 |
|
virusdefender
|
272169c0c8
|
去除对 subprocess32的依赖
|
2015-08-15 17:49:51 +08:00 |
|
virusdefender
|
5ab004638d
|
修复配置文件错误
|
2015-08-15 17:02:46 +08:00 |
|
virusdefender
|
088787443e
|
修改判题端配置文件
|
2015-08-15 17:00:55 +08:00 |
|
virusdefender
|
cb7dd2f820
|
修改判题的目录结构
|
2015-08-15 14:50:22 +08:00 |
|
virusdefender
|
92ab7e5fb2
|
更改项目结构
|
2015-08-12 16:49:25 +08:00 |
|
virusdefender
|
2ba1fa5669
|
修改部分命名风格
|
2015-08-12 14:56:18 +08:00 |
|
virusdefender
|
88be032a38
|
修改判题设置;增加web 和 mongodb 数据库的操作
|
2015-08-12 14:01:34 +08:00 |
|
virusdefender
|
8979def927
|
编译时忽略警告
|
2015-08-12 10:56:03 +08:00 |
|
virusdefender
|
408776910d
|
尝试一下判题
|
2015-08-12 10:24:06 +08:00 |
|
virusdefender
|
2752647f58
|
增加判题的测试用例文件
|
2015-08-10 20:19:35 +08:00 |
|
virusdefender
|
d37bbb3eab
|
修改判题的目录结构;增加celery 配置
|
2015-08-10 16:59:43 +08:00 |
|
virusdefender
|
26dab5bd91
|
修改项目结构,还有些混乱。
|
2015-07-31 23:23:15 +08:00 |
|
virusdefender
|
3ee4b57802
|
增加了题目的 model 修改几个 typo
|
2015-07-17 11:00:15 +08:00 |
|
virusdefender
|
dd7fe6ee44
|
给编译器也增加超时保护
比如使用include</dev/random>就可能导致编译器卡死,增加了一个编译超时。
重命名了exception模块
整理了部分格式
|
2015-07-07 21:04:38 +08:00 |
|
virusdefender
|
d85ed0a2ec
|
修复部分情况下解析lrun输出结果失败的问题
因为lrun的输出也是重定向到stderr的,程序也可能向这里面输出,造成解析错误和潜在的伪造输出结果的问题。
|
2015-07-07 19:26:40 +08:00 |
|
virusdefender
|
c033b2c1e8
|
增加java编译参数
|
2015-07-07 18:07:54 +08:00 |
|
virusdefender
|
ef88a8a155
|
修改部分常量定义
增加编译功能
|
2015-07-07 13:33:38 +08:00 |
|
virusdefender
|
cc0f720de9
|
修改代码风格和部分typo
主要是将类的私有变量进行了重命名,改为_开头
|
2015-07-06 19:20:12 +08:00 |
|
virusdefender
|
5f8f2acf82
|
修复代码输出重定向错误的问题 增加了输出结果判断
lrun在运行的时候,输入输出重定向的context是当前的shell,所以不能重定向到进程的tmpfs中。考虑在docker中开辟tmpfs缓存空间。
输出结果比较是采用的md5,暂时没考虑格式错误的情况。
|
2015-07-06 18:59:30 +08:00 |
|
virusdefender
|
f1915a8b33
|
使用更好的办法修复Python2不能pickle实例方法的问题
详见 https://virusdefender.net/index.php/archives/318/
|
2015-07-03 20:10:38 +08:00 |
|
virusdefender
|
b9143c6408
|
修复子进程中引发的异常无法捕获的bug
多进程中子进程引发异常之后并不会直接显示,而是在get()方法被访问的时候再次引发异常。参考http://stackoverflow.com/questions/22094852/how-to-catch-exceptions-in-workers-in-multiprocessing
|
2015-07-03 16:56:40 +08:00 |
|
virusdefender
|
a26757916e
|
删除多线程库
|
2015-07-03 16:02:23 +08:00 |
|
virusdefender
|
ae931b4dba
|
将判题控制器由多线程修改为多进程
我一定是sb了,使用Python的多线程跑cpu密集型的应用。
由于Python的GIL的存在,导致在cpu上每次只能有一个线程在运行。如果一个线程运行,而且cpu时间是3秒的话,那实际运行时间将大约3秒。如果两个线程同时在进行,那总运行时间几乎要翻倍。
而换用多进程之后,单个进行运行实际时间只是稍微大于cpu时间,两个进程同时运行的时候,总的时间也是cpu时间稍微增加。
同时Python2在多进程之间运行类方法的时候存在bug,使用了 http://stackoverflow.com/questions/1816958/cant-pickle-type-instancemethod-when-using-pythons-multiprocessing-pool-ma/7309686#7309686 的方法进行patch。然后不同进程之间共享的时候,要防止循环依赖,参考 http://stackoverflow.com/questions/25382455/python-notimplementederror-pool-objects-cannot-be-passed-between-processes
|
2015-07-03 16:01:53 +08:00 |
|
virusdefender
|
b43dfe37c8
|
judge在ubuntu上暂时能跑起来了
|
2015-07-02 23:39:18 +08:00 |
|
virusdefender
|
8f67c37d0c
|
调用lrun判题和解析判题结果的框架代码完成
使用Python代码调用lrun,然后解析结果。还没有完成,剩下输出对比。
|
2015-07-02 17:23:42 +08:00 |
|
virusdefender
|
00052d8e9b
|
创建新工程 添加了一些通用代码和数据库模型
|
2015-06-26 15:59:53 +08:00 |
|