grishka / smithereen Goto Github PK
View Code? Open in Web Editor NEWFederated, ActivityPub-compatible social network server with friends, walls, and groups.
License: The Unlicense
Federated, ActivityPub-compatible social network server with friends, walls, and groups.
License: The Unlicense
How about reposts? 🤔
Endpoint /system/about is useful to provide more information when reporting a bug. Currently it's almost impossible to find it when logged in.
Smithereen don't hide posts marked as sensitive content, it hides only posts with content warning.
Maybe, you can show sensitive content posts as a post with empty content warning or just with a particular header.
The funny thing, is what there was post from mastodon, but for posts from pleroma,
Situation a bit reversed...
Pictures marked as sensitive are hiding behind CW, but images with CW seems to be removing CW text
Some AP implementations are sending signatures with "hs2019" as the algorithm per https://www.ietf.org/archive/id/draft-ietf-httpbis-message-signatures-00.txt
Technically it's supposed to mean deriving the algorithm from other objects, but practically everyone still assumes it means rsa-sha256 (see also https://socialhub.activitypub.rocks/t/state-of-http-signatures/754)
Apparently the newer drafts completely change the format of the signature headers so that might also be relevant eventually
I get my bio (about me field) with HTML tags when I edit my profile
Steps to reproduce:
* I'm using latest version of Safari browser on the macOS Monterey
I thought it would be nice to have an administrators community to ask some dumb questions (can I communicate with other federations? does access_level=3 actually grant something? can I make friends with other instances?) there instead of polluting GitHub repository with more "how do I?" issues. For example, Telegram chat, IRC channel, Gitter chatroom...
The following input:
супербиток.сука.сайт
https://супербиток.сука.сайт/
https://супербиток.сука.сайт/404
Results in the following HTML (newlines added for clarity):
<a>супербиток.сука.сайт</a><br>
<a>https://супербиток.сука.сайт</a>/<br>
<a>https://супербиток.сука.сайт/404</a>
The <a>
tags here lack the href
attribute, so you can't click them. See live: https://friends.grishka.me/posts/155635
Workaround is to explicitly add the IDN-encoded <a href=...>
tag to the post source: https://friends.grishka.me/posts/155641
When you post something from news feed and press Send, page doesn't reload and new post gets appended through AJAX. But it doesn't have a Like button so you can't like your own post immediately, only through reloading or opening it.
com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the server was 40,737,108 milliseconds ago. The last packet sent successfully to the server was 40,737,108 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:1003)
at smithereen.storage.SessionStorage.getAccountForUsernameAndPassword(SessionStorage.java:87)
at smithereen.routes.SessionRoutes.login(SessionRoutes.java:35)
at spark.RouteImpl$1.handle(RouteImpl.java:72)
at spark.http.matching.Routes.execute(Routes.java:61)
at spark.http.matching.MatcherFilter.doFilter(MatcherFilter.java:134)
at spark.embeddedserver.jetty.JettyHandler.doHandle(JettyHandler.java:50)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1671)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:505)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:698)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:804)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: com.mysql.cj.exceptions.CJCommunicationsException: The last packet successfully received from the server was 40,737,108 milliseconds ago. The last packet sent successfully to the server was 40,737,108 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)
at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:539)
at com.mysql.cj.protocol.a.NativeProtocol.checkErrorMessage(NativeProtocol.java:703)
at com.mysql.cj.protocol.a.NativeProtocol.sendCommand(NativeProtocol.java:642)
at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:941)
at com.mysql.cj.NativeSession.execSQL(NativeSession.java:1075)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:930)
... 24 more
Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:67)
at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:63)
at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:45)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readHeader(TimeTrackingPacketReader.java:52)
at com.mysql.cj.protocol.a.TimeTrackingPacketReader.readHeader(TimeTrackingPacketReader.java:41)
at com.mysql.cj.protocol.a.MultiPacketReader.readHeader(MultiPacketReader.java:54)
at com.mysql.cj.protocol.a.MultiPacketReader.readHeader(MultiPacketReader.java:44)
at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:533)
... 29 more
Hi 👋
I can't attach an image when editing a wall post.
Steps to reproduce a bug:
The text of the post is being edited, but the uploaded files do not appear in the post
I'm looking for a Smithereen instance to see how it works. Can't find one. I hear on hacker news there is atleast a test instance. Can we link to it in the readme? Even if new accounts occasionally get deleted.
Most Fediverse software, like Mastodon, supports domain block lists. This isn't a personal block/mute. It is a server-wide block/mute that only the administrator can start.
It is commonly reachable under /api/v1/instance/domain_blocks
and is, of course, a JSON response. You can find great example by calling that URL on many Mastodon instances, e.g. https://mastodon.social/api/v1/instance/domain_blocks
is a very large list.
Can you add such API path to your software?
When I like a comment, it shows me that I liked the post (puts me to a "people who favorited this post" section). It disappears after refreshing the page though
When I enter to Black list of my group, I get an error:
com.mitchellbosecke.pebble.error.ParserException: Positional arguments must be declared before any named arguments. (group_edit_blocking:15)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parseArguments(ExpressionParser.java:579)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parseArguments(ExpressionParser.java:534)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parseFunctionOrMacroInvocation(ExpressionParser.java:437)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parsePostfixExpression(ExpressionParser.java:426)
at com.mitchellbosecke.pebble.parser.ExpressionParser.subparseExpression(ExpressionParser.java:339)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parseExpression(ExpressionParser.java:161)
at com.mitchellbosecke.pebble.parser.ExpressionParser.parseExpression(ExpressionParser.java:92)
at com.mitchellbosecke.pebble.parser.ParserImpl.subparse(ParserImpl.java:146)
at com.mitchellbosecke.pebble.tokenParser.ForTokenParser.parse(ForTokenParser.java:40)
at com.mitchellbosecke.pebble.parser.ParserImpl.subparse(ParserImpl.java:195)
at com.mitchellbosecke.pebble.tokenParser.BlockTokenParser.parse(BlockTokenParser.java:49)
at com.mitchellbosecke.pebble.parser.ParserImpl.subparse(ParserImpl.java:195)
at com.mitchellbosecke.pebble.parser.ParserImpl.subparse(ParserImpl.java:104)
at com.mitchellbosecke.pebble.parser.ParserImpl.parse(ParserImpl.java:97)
at com.mitchellbosecke.pebble.PebbleEngine.getPebbleTemplate(PebbleEngine.java:169)
at com.mitchellbosecke.pebble.PebbleEngine.lambda$getTemplate$2(PebbleEngine.java:151)
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)
at com.mitchellbosecke.pebble.cache.template.ConcurrentMapTemplateCache.computeIfAbsent(ConcurrentMapTemplateCache.java:24)
at com.mitchellbosecke.pebble.cache.template.ConcurrentMapTemplateCache.computeIfAbsent(ConcurrentMapTemplateCache.java:9)
at com.mitchellbosecke.pebble.PebbleEngine.getTemplate(PebbleEngine.java:151)
at com.mitchellbosecke.pebble.PebbleEngine.getTemplate(PebbleEngine.java:122)
at smithereen.templates.Templates.getTemplate(Templates.java:114)
at smithereen.templates.RenderedTemplateResponse.getAndPrepareTemplate(RenderedTemplateResponse.java:75)
at smithereen.templates.RenderedTemplateResponse.renderToWriter(RenderedTemplateResponse.java:62)
at smithereen.SmithereenApplication.lambda$main$36(SmithereenApplication.java:484)
at smithereen.sparkext.ExtendedStreamingSerializer$Entry.serialize(ExtendedStreamingSerializer.java:42)
at smithereen.sparkext.ExtendedStreamingSerializer.process(ExtendedStreamingSerializer.java:26)
at spark.serialization.Serializer.processElement(Serializer.java:49)
at spark.serialization.SerializerChain.process(SerializerChain.java:53)
at spark.http.matching.Body.serializeTo(Body.java:72)
at spark.http.matching.MatcherFilter.doFilter(MatcherFilter.java:195)
at spark.embeddedserver.jetty.JettyHandler.doHandle(JettyHandler.java:50)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1584)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:501)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.base/java.lang.Thread.run(Thread.java:832)
As a user who has zero groups I'm trying to join group and get an error:
Unhandled exception
java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'groups SET member_count=member_count+1 WHERE id=1' at line 1
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:370)
at smithereen.storage.GroupStorage.joinGroup(GroupStorage.java:368)
at smithereen.routes.GroupsRoutes.join(GroupsRoutes.java:216)
at smithereen.sparkext.CSRFRoute.handle(CSRFRoute.java:17)
at spark.RouteImpl$1.handle(RouteImpl.java:72)
at spark.http.matching.Routes.execute(Routes.java:61)
at spark.http.matching.MatcherFilter.doFilter(MatcherFilter.java:134)
at spark.embeddedserver.jetty.JettyHandler.doHandle(JettyHandler.java:50)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1584)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:501)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.base/java.lang.Thread.run(Thread.java:832)
Starting the project with the provided docker-compose.yml, I'm stuck on the following issue.
MySQL reports ready and OK:
smithereen-mysql-1 | 2023-05-15T17:36:40.214471Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
smithereen-mysql-1 | 2023-05-15T17:36:40.220184Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.33' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL.
The web
container can't seem to find the database:
smithereen-web-1 | Exception in thread "main" java.lang.RuntimeException: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at smithereen.SmithereenApplication.main(SmithereenApplication.java:106)
smithereen-web-1 | Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
smithereen-web-1 | at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
smithereen-web-1 | at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)
smithereen-web-1 | at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:681)
smithereen-web-1 | at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
smithereen-web-1 | at smithereen.storage.DatabaseConnectionManager.getConnection(DatabaseConnectionManager.java:30)
smithereen-web-1 | at smithereen.Config.loadFromDatabase(Config.java:124)
smithereen-web-1 | at smithereen.SmithereenApplication.main(SmithereenApplication.java:103)
smithereen-web-1 | Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
smithereen-web-1 | at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
smithereen-web-1 | at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
smithereen-web-1 | at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
smithereen-web-1 | at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
smithereen-web-1 | at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:91)
smithereen-web-1 | at com.mysql.cj.NativeSession.connect(NativeSession.java:144)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:956)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826)
smithereen-web-1 | ... 8 more
smithereen-web-1 | Caused by: java.net.ConnectException: Connection refused
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect0(Native Method)
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect(Net.java:579)
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect(Net.java:568)
smithereen-web-1 | at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
smithereen-web-1 | at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
smithereen-web-1 | at java.base/java.net.Socket.connect(Socket.java:633)
smithereen-web-1 | at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:155)
smithereen-web-1 | at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:65)
smithereen-web-1 | ... 11 more
smithereen-web-1 exited with code 1
smithereen-web-1 | Exception in thread "main" java.lang.RuntimeException: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at smithereen.SmithereenApplication.main(SmithereenApplication.java:106)
smithereen-web-1 | Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
smithereen-web-1 | at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
smithereen-web-1 | at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)
smithereen-web-1 | at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:681)
smithereen-web-1 | at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
smithereen-web-1 | at smithereen.storage.DatabaseConnectionManager.getConnection(DatabaseConnectionManager.java:30)
smithereen-web-1 | at smithereen.Config.loadFromDatabase(Config.java:124)
smithereen-web-1 | at smithereen.SmithereenApplication.main(SmithereenApplication.java:103)
smithereen-web-1 | Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
smithereen-web-1 |
smithereen-web-1 | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
smithereen-web-1 | at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
smithereen-web-1 | at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
smithereen-web-1 | at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
smithereen-web-1 | at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
smithereen-web-1 | at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)
smithereen-web-1 | at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
smithereen-web-1 | at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:91)
smithereen-web-1 | at com.mysql.cj.NativeSession.connect(NativeSession.java:144)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:956)
smithereen-web-1 | at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826)
smithereen-web-1 | ... 8 more
smithereen-web-1 | Caused by: java.net.ConnectException: Connection refused
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect0(Native Method)
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect(Net.java:579)
smithereen-web-1 | at java.base/sun.nio.ch.Net.connect(Net.java:568)
smithereen-web-1 | at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
smithereen-web-1 | at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
smithereen-web-1 | at java.base/java.net.Socket.connect(Socket.java:633)
smithereen-web-1 | at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:155)
smithereen-web-1 | at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:65)
smithereen-web-1 | ... 11 more
smithereen-web-1 exited with code 1
I'd like to request a feature: healthcheck endpoint(s). This is useful to keep service healthy and avoid noticeable downtimes. Kubernetes best practices suggest to use /healthz
, /livez
and /readyz
for this purpose (https://kubernetes.io/docs/reference/using-api/health-checks/). While having all 3 of them would be perfect, having at least /healthz
seems essential currently.
Hello! 👋
I propose to develop a public Rest API for developing third-party clients
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.