我在Heroku上推送了一个更新到我的应用程序,现在我在应用程序崩溃时收到以下错误。如果你看一下错误,你会发现它与S3Blobs.java有关。但是,我的上次更新并未影响此文件,或实际上任何Java代码。最后一次更新是html,javascript和css文件。
是否有人熟悉此错误,以及可能导致它在Heroku上突然冒出来的原因。本地应用程序运行良好。
如果我在Heroku上回滚到以前版本的应用程序,app仍会运行(再次回滚不会影响S3Blobs.java)。
Heroku编译我的Java代码的方式有可能改变吗?
2014-09-27T22:24:13.874161 + 00:00 app [web.2]:~_ _
2014-09-27T22:24:13.874166 + 00:00 app [web.2]:~_ __ | | __ _ _ | | 2014-09-27T22:24:13.874167 + 00:00 app [web.2]:〜| ' | | /' | || || 2014-09-27T22:24:13.874189 + 00:00 app [web.2]:〜| / | | \ | \() 2014-09-27T22:24:13.874190 + 00:00 app [web.2]:〜|| | /
2014-09-27T22:24:13.874192 + 00:00 app [web.2]:〜 2014-09-27T22:24:13.874193 + 00:00 app [web.2]:〜玩! 1.2.7, http://www.playframework.org 2014-09-27T22:24:13.874195 + 00:00 app [web.2]:〜框架ID是prod 2014-09-27T22:24:13.874196 + 00:00 app [web.2]:~2014-09-27T22:24:13.874197 + 00:00 app [web.2]:~Ctrl + C to 停止2014-09-27T22:24:13.874199 + 00:00 app [web.2]:〜 2014-09-27T22:24:13.623029 + 00:00 app [web.1]:22:24:13,622 INFO~ 连接到 JDBC:在PostgreSQL://ec2-23-23-147-250.compute-1.amazonaws.com:5582 / d7p28cauibod8d SSL =真安培; sslfactory = org.postgresql.ssl.NonValidatingFactory 2014-09-27T22:24:14.543346 + 00:00 heroku [web.2]:进程退出 状态1 2014-09-27T22:24:14.553771 + 00:00 heroku [web.2]:状态发生变化 从开始到崩溃2014-09-27T22:24:14.807111 + 00:00 app [web.1]: 22:24:14,806 INFO~Application' tfp_v2_fix'现在开始了! 2014-09-27T22:24:14.956075 + 00:00 app [web.1]: 2014-09-27T22:24:14.956085 + 00:00 app [web.1]:启动S3Blobs 2014-09-27T22:24:14.956088 + 00:00 app [web.1]:2014-09-27T22:24:16Z app [postgres.12036]:[OLIVE]无法从客户端接收数据: 连接重置由同行2014-09-27T22:24:16Z app [postgres.12035]: [OLIVE]无法从客户端接收数据:由对等方重置连接 2014-09-27T22:24:16Z app [postgres.12034]:[OLIVE]无法接收 来自客户端的数据:由对等方重置连接 2014-09-27T22:24:16.122974 + 00:00 app [web.1]:Sep 27,2014 22:24:16 +0000 [3 5] com.newrelic.agent.Agent INFO:New Relic Agent已关闭2014-09-27T22:24:16.116801 + 00:00 app [web.1]:22:24:16,115 ERROR~2014-09-27T22:24:16.116807 + 00:00 app [web.1]: 2014-09-27T22:24:16.116810 + 00:00 app [web.1]:@ 6jk9a374i 2014-09-27T22:24:16.116811 + 00:00 app [web.1]:工作期间出错 执行(s3.S3Blobs)2014-09-27T22:24:16.116813 + 00:00 app [web.1]: 2014-09-27T22:24:16.116815 + 00:00 app [web.1]:执行异常(In 第32行附近的/app/s3/S3Blobs.java)2014-09-27T22:24:16.116817 + 00:00 app [web.1]:发生IllegalStateException:不支持的cookie规范: 默认2014-09-27T22:24:16.116818 + 00:00 app [web.1]: 2014-09-27T22:24:16.116820 + 00:00 app [web.1]: play.exceptions.JavaExecutionException:不支持的cookie规范: 默认2014-09-27T22:24:16.116821 + 00:00 app [web.1]:at play.jobs.Job.call(Job.java:155)2014-09-27T22:24:16.116823 + 00:00 app [web.1]:在Invocation.Job(播放!)2014-09-27T22:24:16.116824 + 00:00 app [web.1]:引起:java.lang.IllegalStateException:不支持 cookie规范:默认2014-09-27T22:24:16.116826 + 00:00 app [web.1]:at org.apache.http.cookie.CookieSpecRegistry.getCookieSpec(CookieSpecRegistry.java:110) 2014-09-27T22:24:16.116828 + 00:00 app [web.1]:at org.apache.http.cookie.CookieSpecRegistry $ 1。创建(CookieSpecRegistry.java:163) 2014-09-27T22:24:16.116829 + 00:00 app [web.1]:at org.apache.http.client.protocol.RequestAddCookies.process(RequestAddCookies.java:157) 2014-09-27T22:24:16.116831 + 00:00 app [web.1]:at org.apache.http.protocol.ImmutableHttpProcessor.process(ImmutableHttpProcessor.java:132) 2014-09-27T22:24:16.116833 + 00:00 app [web.1]:at org.apache.http.protocol.HttpRequestExecutor.preProcess(HttpRequestExecutor.java:166) 2014-09-27T22:24:16.116834 + 00:00 app [web.1]:at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:485) 2014-09-27T22:24:16.116835 + 00:00 app [web.1]:at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:878) 2014-09-27T22:24:16.116837 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:84) 2014-09-27T22:24:16.116838 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:109) 2014-09-27T22:24:16.116839 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57) 2014-09-27T22:24:16.116840 + 00:00 app [web.1]:at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:268) 2014-09-27T22:24:16.799309 + 00:00 heroku [web.1]:进程退出 状态1 2014-09-27T22:24:16.809162 + 00:00 heroku [web.1]:状态已更改 从开始到崩溃2014-09-27T22:24:16.116842 + 00:00 app [web.1]: 在 com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:170) 2014-09-27T22:24:16.116843 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2597) 2014-09-27T22:24:16.116845 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2569) 2014-09-27T22:24:16.116846 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.listObjects(AmazonS3Client.java:415) 2014-09-27T22:24:16.116847 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.doesBucketExist(AmazonS3Client.java:723) 2014-09-27T22:24:16.116849 + 00:00 app [web.1]:at s3.S3Blobs.doJob(S3Blobs.java:32)2014-09-27T22:24:16.116850 + 00:00 app [web.1]:at play.jobs.Job.doJobWithResult(Job.java:50) 2014-09-27T22:24:16.116851 + 00:00 app [web.1]:at play.jobs.Job.call(Job.java:146)2014-09-27T22:24:16.116853 + 00:00 app [web.1]:... 1更多2014-09-27T22:24:16.118780 + 00:00 app [web.1]: 线程" main"中的例外情况play.exceptions.JavaExecutionException: 不支持的cookie规范:默认2014-09-27T22:24:16.118817 + 00:00 app [web.1]:at play.jobs.Job.call(Job.java:155) 2014-09-27T22:24:16.118846 + 00:00 app [web.1]:在Invocation.Job(播放!) 2014-09-27T22:24:16.118882 + 00:00 app [web.1]:引起: java.lang.IllegalStateException:不支持的cookie规范:默认 2014-09-27T22:24:16.118912 + 00:00 app [web.1]:at org.apache.http.cookie.CookieSpecRegistry.getCookieSpec(CookieSpecRegistry.java:110) 2014-09-27T22:24:16.118942 + 00:00 app [web.1]:at org.apache.http.cookie.CookieSpecRegistry $ 1。创建(CookieSpecRegistry.java:163) 2014-09-27T22:24:16.118973 + 00:00 app [web.1]:at org.apache.http.client.protocol.RequestAddCookies.process(RequestAddCookies.java:157) 2014-09-27T22:24:16.118998 + 00:00 app [web.1]:at org.apache.http.protocol.ImmutableHttpProcessor.process(ImmutableHttpProcessor.java:132) 2014-09-27T22:24:16.119030 + 00:00 app [web.1]:at org.apache.http.protocol.HttpRequestExecutor.preProcess(HttpRequestExecutor.java:166) 2014-09-27T22:24:16.119060 + 00:00 app [web.1]:at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:485) 2014-09-27T22:24:16.119091 + 00:00 app [web.1]:at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:878) 2014-09-27T22:24:16.119112 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:84) 2014-09-27T22:24:16.119145 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:109) 2014-09-27T22:24:16.119174 + 00:00 app [web.1]:at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57) 2014-09-27T22:24:16.119206 + 00:00 app [web.1]:at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:268) 2014-09-27T22:24:16.119227 + 00:00 app [web.1]:at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:170) 2014-09-27T22:24:16.119258 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2597) 2014-09-27T22:24:16.119288 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2569) 2014-09-27T22:24:16.119317 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.listObjects(AmazonS3Client.java:415) 2014-09-27T22:24:16.119342 + 00:00 app [web.1]:at com.amazonaws.services.s3.AmazonS3Client.doesBucketExist(AmazonS3Client.java:723) 2014-09-27T22:24:16.119374 + 00:00 app [web.1]:at s3.S3Blobs.doJob(S3Blobs.java:32)2014-09-27T22:24:16.119404 + 00:00 app [web.1]:at play.jobs.Job.doJobWithResult(Job.java:50) 2014-09-27T22:24:16 + 00:00 app [heroku-postgres]: source = HEROKUPOSTGRESQL_OLIVE sample#current_transaction = 1953 sample#db_size = 6842552bytes sample#tables = 1 sample#active-connections = 5 sample#waiting-connections = 0 样品#索引高速缓冲存储器命中率= 0.97895 sample#table-cache-hit-rate = 0.99444 sample#load-avg-1m = 0.535 样本#load-avg-5m = 0.375样本#load-avg-15m = 0.285样本#read-iops = 0 sample#write-iops = 20.195 sample#memory-total = 15405616kB sample#memory-free = 243784kB sample#memory-cached = 14421060kB 样品#memory-postgres = 253500kB 2014-09-27T22:24:16.119434 + 00:00 app [web.1]:at play.jobs.Job.call(Job.java:146) 2014-09-27T22:24:16.119459 + 00:00 app [web.1]:...还有1个 2014-09-27T22:24:16.121017 + 00:00 app [web.1]:Sep 27,2014 22:24:16 +0000 [3 5] com.newrelic.agent.Agent INFO:JVM正在关闭
答案 0 :(得分:1)
我没有触及我的dependenies.yml文件数周,也没有运行“play deps --sync”数周,所以没想到在我的本地机器上查看。
答案 1 :(得分:1)
这里出现同样的问题(“IllegalStateException出现:不支持的cookie规范:默认”),甚至不是在Play框架或Heroku上,而是在经典的Java Web应用程序(Mifos开源小额信贷平台)中,并通过升级来解决从v1.7.2到最新的v2.3.3的可靠保证测试框架(可能是它的一些隐式传递依赖,这可能是比自己放心的根本原因,也许是来自v4的org.apache.httpcomponents httpclient的变化。 2.3到目前最新的v4.3.5) - 显然一些版本不匹配是这个版本的根本原因。
答案 2 :(得分:0)
org.apache.httpcomponents httpclient似乎是我的根本原因。
版本4.3.5之后的任何内容都会在使用它的库中导致此错误(并且尚未准备好),因此请检查您拥有的版本。
答案 3 :(得分:0)
Apache httpclient 4.3.6
运行正常,请使用此版本。