Feed aggregator

Tigase server administration: Is the message "SocketThread.<clinit>() WARNING" in the console-log...

Tigase XMPP Server Board - 15 hours 2 min ago

Hi,

There are few WARNING lines in tigase-console.log file so I am thinking these WARNINGs might be issues for some future options which are not used yet.
The bollow three WARNINGs appear in the last lines of tigase-console.log:

2015-03-01 11:20:01.517 [main] ConfigurationCache.store() WARNING: Dumping server configuration to: etc/config-dump.properties
2015-03-01 11:20:21.394 [ConnectionOpenThread] SocketThread.<clinit>() WARNING: 9 socketReadThreads started.
2015-03-01 11:20:21.402 [ConnectionOpenThread] SocketThread.<clinit>() WARNING: 9 socketWriteThreads started.

To my understanding the reason for the first line "Dumping server configuration" is existence of other warning in logfile so the first warning line isn't an issue(?), but I don't have any clue for the above second and third warnings and despite of these warning the server is working fine so far.

There are two other WARNINGs. Actually, the DNS-related settings in the Tigase and proper SRV records in real DNS server has been created accordingly, I mean the "hostname" and "dnsdomainname" commands (in linux) are resolved correctly; However I get two DNS-related WARNINGs in the logfile:

2015-03-01 11:19:53.407 [main] DNSResolver.<clinit>() WARNING: Resolving default host name: realDomain.net took: 8
2015-03-01 11:19:57.932 [main] VHostManager.setProperties() WARNING: {realDomain.net=Domain: realDomain.net, enabled: true, anonym: true, register: true, maxusers: 0, tls: false, s2sSecret: b0006198-aae3-494a-9ff6-6d6afe9f1bef, domainFilter: ALL, c2sPortsAllowed: null, saslAllowedMechanisms: null}
-----------------------
(I have just changed the real name of registered domain to "realDomain.net")

Sorry for this long post and thank you in advance for help
-----------------------

config-type = --gen-config-all
--admins =
--virt-hosts = realDomain.net
--user-db-uri = jdbc:mysql://localhost/tigasedb?user=tigase&password=realPasswordHere
--user-db = mysql
--cluster-mode = false
--debug=db,server
--monitoring=jmx:9050,http:9080,snmp:9060
--sm-plugins = +message-archive-xep-0136,+jabber:iq:auth,+urn:ietf:params:xml:ns:xmpp-sasl,+urn:ietf:params:xml:ns:xmpp-bind,+urn:ietf:params:xml:ns:xmpp-session,+jabber:iq:register,+jabber:iq:roster,+presence,+jabber:iq:privacy,+jabber:iq:version,+http://jabber.org/protocol/stats,+starttls,+amp,-msgoffline,+vcard-temp,+http://jabber.org/protocol/commands,+jabber:iq:private,+urn:xmpp:ping,+basic-filter,+domain-filter,+pep,-zlib,+jabber:iq:last
--amp-security-level = NONE

Categories: Tigase Forums

Tigase server administration: RE: Issue with Tigase 7.0.0 - Session has not been yet authorised. ...

Tigase XMPP Server Board - 15 hours 45 min ago

Thanks for the comment,

Can you advise in more detail how does auto-discovery works?

Do I need to segment/separate our Tigase Staging & Production to separate vlans?

Lets say we have two separate environments - will one env. discover the second when clustering is enabled?
As you mention it relies on DB - im just wondering if its network discovery or not and how does it work.

Thanks again.

Categories: Tigase Forums

Tigase server administration: RE: Tigase statistics: would like to get only a number of SENT mess...

Tigase XMPP Server Board - Fri, 02/27/2015 - 04:31

Thanks, that makes sense

Does c2s component handle only packet from user or to user as well?

Categories: Tigase Forums

Tigase server administration: RE: Issue with Tigase 7.0.0 - Session has not been yet authorised. ...

Tigase XMPP Server Board - Fri, 02/27/2015 - 01:15

There is not explicit guide on how to set-up clustering as it's quite straightforward and comes down to enabling single option in etc/init.properties (v. --cluster-mode):
--cluster-mode = true

Tigase will use node auto-discovery to discover cluster nodes (this is based on shared DB to store information about the cluster nodes) and connect to them. If you require further fine-tuning you can specify nodes configuration explicitly - --cluster-nodes

Categories: Tigase Forums

Tigase server development: RE: Problem with Stream Management

Tigase XMPP Server Board - Thu, 02/26/2015 - 13:38
I did analysis of parts of logs you attached and from what I see:
  1. STREAM_CLOSE being sent but other subdomain is not something that should cause issue
  2. Impossible happened is reported as packet <ping/> is sent from closed connection reporting error while it's session in SessionManager is already closed. This is something which in code before StreamManagement should not happen, but this also is not cause of messages not being saved to offline store.

I suppose that your message is not saved because you sent message to full jid of recipient and in this case messages sent to full jid are not stored in offline store as in some cases (with random resources) they would be never delivered to recipient. So instead of storing messages set to full jid we send message back as an error. I would suggest to check if you received error message on client from which you sent message.

Categories: Tigase Forums

Tigase server administration: RE: Tigase statistics: would like to get only a number of SENT mess...

Tigase XMPP Server Board - Thu, 02/26/2015 - 12:55

Take a look at metrics called "IN_QUEUE processed messages" and "OUT_QUEUE processed messages". Each component has this metrics so you can see how many messages went through that component in each direction (from a user/to a user). If you want to see how many messages were actually received from users, from the network you need to look at connection managers: c2s, Bosh, Websockets, and maybe s2s if you are interested in server to server communication. SM actually will show many more messages as it processes each message twice, also messages from MUC are passing through the SM, messages coming from other server and going out to other server also go through SM.

Categories: Tigase Forums

Tigase server administration: RE: Issue with Tigase 7.0.0 - Session has not been yet authorised. ...

Tigase XMPP Server Board - Thu, 02/26/2015 - 06:38

Please ignore this post, I was able to fix the issue by adding &autoCreate=true to user repo.
no more error.

Could you guys point me to a guide to help me set-up clustering on tigase?
im on a single server at the moment, and would be scaling up pretty soon.

Thanks!

Categories: Tigase Forums

Tigase server administration: Issue with Tigase 7.0.0 - Session has not been yet authorised. - on...

Tigase XMPP Server Board - Thu, 02/26/2015 - 05:25

Hello,

Will appreciate any assistance provided.

I've set up my Tigase server (7.0.0) according to instructions.
Everything is working properly, except one error message in the logs when a user logs out.
User log-in provides no error.

Here is the error:

@
2015-02-26 13:07:34.441 [pep Queue Worker 0] SessionManager$ProcessorWorkerThread.process() WARNING: Exception during packet processing: from=, to=, DATA=<priority>0</priority> <c ext="mvideo maudio avcap rdserver ice avavail rdclient rdmuxing video audio" node="http://www.apple.com/ichat/caps" ver="1000" xmlns="http://jabber.org/protocol/caps"/><x xmlns="http://jabber.org/protocol/tune"/><x xmlns="vcard-temp:x:update"/></presence>, SIZE=422, XMLNS=jabber:client, PRIORITY=PRESENCE, PERMISSION=AUTH, TYPE=null tigase.xmpp.NotAuthorizedException: Session has not been yet authorised. at tigase.xmpp.XMPPResourceConnection.isUserId(XMPPResourceConnection.java:833) at tigase.pubsub.PepPlugin.processPresence(PepPlugin.java:220) at tigase.pubsub.PepPlugin.process(PepPlugin.java:113) at tigase.server.xmppsession.SessionManager$ProcessorWorkerThread.process(SessionManager.java:2434) at tigase.util.WorkerThread.run(WorkerThread.java:128) tigase.xmpp.NotAuthorizedException: Can not access user repository. at tigase.xmpp.RepositoryAccess.setData(RepositoryAccess.java:1110) at tigase.xmpp.impl.roster.RosterFlat.saveUserRoster(RosterFlat.java:441) at tigase.xmpp.impl.roster.RosterFlat.logout(RosterFlat.java:517) at tigase.xmpp.impl.Presence.stopped(Presence.java:843) at tigase.server.xmppsession.SessionManager.closeSession(SessionManager.java:1076) at tigase.server.xmppsession.SessionManager.closeConnection(SessionManager.java:1006) at tigase.server.xmppsession.SessionManager$SessionCloseProc.process(SessionManager.java:2483) at tigase.server.xmppsession.SessionManager$ProcessorWorkerThread.process(SessionManager.java:2434) at tigase.util.WorkerThread.run(WorkerThread.java:128) Caused by: tigase.db.UserNotFoundException: User does not exist: user@mydomain.com at tigase.db.jdbc.JDBCRepository.getUserUID(JDBCRepository.java:1186) at tigase.db.jdbc.JDBCRepository.setData(JDBCRepository.java:773) at tigase.db.UserRepositoryMDImpl.setData(UserRepositoryMDImpl.java:381) at tigase.xmpp.RepositoryAccess.setData(RepositoryAccess.java:1106) ... 8 more 2015-02-26 13:09:28.201 [pep Queue Worker 0] SessionManager$ProcessorWorkerThread.process() WARNING: Exception during packet processing: from=sess-man@xmpp-tigase1.localdomain, to=sess-man@xmpp-tigase1.localdomain, DATA=<presence from="user@mydomain.com/Messages" to="user@mydomain.com" xmlns="jabber:client"><priority>0</priority> <c ext="mvideo maudio avcap rdserver ice avavail rdclient rdmuxing video audio" node="http://www.apple.com/ichat/caps" ver="1000" xmlns="http://jabber.org/protocol/caps"/><x xmlns="http://jabber.org/protocol/tune"/><x xmlns="vcard-temp:x:update"/></presence>, SIZE=422, XMLNS=jabber:client, PRIORITY=PRESENCE, PERMISSION=AUTH, TYPE=null tigase.xmpp.NotAuthorizedException: Session has not been yet authorised. at tigase.xmpp.XMPPResourceConnection.isUserId(XMPPResourceConnection.java:833) at tigase.pubsub.PepPlugin.processPresence(PepPlugin.java:220) at tigase.pubsub.PepPlugin.process(PepPlugin.java:113) at tigase.server.xmppsession.SessionManager$ProcessorWorkerThread.process(SessionManager.java:2434) at tigase.util.WorkerThread.run(WorkerThread.java:128) @

Categories: Tigase Forums

Tigase server administration: RE: Tigase statistics: would like to get only a number of SENT mess...

Tigase XMPP Server Board - Thu, 02/26/2015 - 00:12

I checked all this info and didn't found the answer

We only can have next statistics for packets per time:
sess-man/Last second packets=193, sess-man/Last minute packets=4015, sess-man/Last hour packets=1437077,

As I understand this is SENT+RCVD packets.

We only can see the total value of SENT and RCVD packets
sess-man/Packets received=61890696, sess-man/Packets sent=57654620,

Categories: Tigase Forums

Tigase server administration: RE: No reply from MUC when try to configure a Reserved Room

Tigase XMPP Server Board - Wed, 02/25/2015 - 22:45

Right you are!
Sorry for my mistake that caused you to review the stanza and these long logs.

Thank you for help

Categories: Tigase Forums

Tigase server administration: RE: Reconnecting service for component

Tigase XMPP Server Board - Wed, 02/25/2015 - 22:28

This is normal. The wording of the log output may be a bit misleading but above only indicates that Tigase started operating on the mentioned ports.

Categories: Tigase Forums

Tigase server development: RE: Client timeout?

Tigase XMPP Server Board - Wed, 02/25/2015 - 22:22

The improvements were in the area of avoiding packet loss (messages mostly). Quicker detection of user availability can be achieved by decreasing watchdog timers and/or tweaking underlying operating system network settings.

Categories: Tigase Forums

Tigase server development: RE: Problem with Stream Management

Tigase XMPP Server Board - Wed, 02/25/2015 - 19:43

I have the same issue. If the app doesn't send an unavailable status (for example put in airplane mode) the message is just lost because the server thinks the connection is still valid. It takes few minutes(?) for the server to close the connection.

Once the server closes the connection the messages are persisted in the database. I could not find a quick way to resolve this issue so I implemented read receipts in the client and resend a message if the client has not read the message (once I get the client presence as online).

Categories: Tigase Forums

Tigase server development: Problem with Stream Management

Tigase XMPP Server Board - Wed, 02/25/2015 - 06:15

Hi there,

i am trying to make stream management work, testing this scenario

  • a client connected with stream management on, on a mobile phone
  • tigase server 7.0.0 with stream management on
  • the client is connected to the server
  • I set the mobile in airplane mode
  • I send a message to the client

in the log I find that the message (together with presence/IQ/...) arrives to the server, and I get the resumption timeout check in place...

2015-02-25 11:32:16.446 [socketReadThread-8] StreamManagementIOProcessor.serviceStopped() FINEST: c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322, type: accept, Socket: TLS: c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322 Socket[unconnected], jid: 103@acme.domain.net/MyResource, service stopped - checking resumption timeout

After a while it looks like the stream gets closed (I see many messages saying that)

2015-02-25 11:32:51.313 [scheduler_pool-6-thread-1-c2s] ClientConnectionManager.xmppStreamClosed() FINE: Service stopped, sending packet: from=c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322, to=sess-man@acme.domain.net, DATA=<iq type="set" from="c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322" to="sess-man@acme.domain.net" id="c4502e14-0454-4f0b-9144-f0327b94b5b0"><command node="STREAM_CLOSED" xmlns="http://jabber.org/protocol/commands"><x type="submit" xmlns="jabber:x:data"><field var="user-jid"><value>103@acme.domain.net/MyResource</value></field></x></command></iq>, SIZE=375, XMLNS=null, PRIORITY=SYSTEM, PERMISSION=NONE, TYPE=set 2015-02-25 11:32:51.313 [in_3-message-router] MessageRouter.processPacket() FINEST: Processing packet: from=103@acme.domain.net/MyResource, to=acme.domain.net, DATA=<iq type="error" from="103@acme.domain.net/MyResource" to="acme.domain.net" id="tigase-ping"><ping xmlns="urn:xmpp:ping"/><error code="404" type="wait"><recipient-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>, SIZE=244, XMLNS=null, PRIORITY=NORMAL, PERMISSION=NONE, TYPE=error 2015-02-25 11:32:51.313 [in_5-message-router] MessageRouter.processPacket() FINEST: Processing packet: from=c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322, to=sess-man@acme.domain.net, DATA=<iq type="set" from="c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322" to="sess-man@acme.domain.net" id="c4502e14-0454-4f0b-9144-f0327b94b5b0"><command node="STREAM_CLOSED" xmlns="http://jabber.org/protocol/commands"><x type="submit" xmlns="jabber:x:data"><field var="user-jid"><value>103@acme.domain.net/MyResource</value></field></x></command></iq>, SIZE=375, XMLNS=null, PRIORITY=SYSTEM, PERMISSION=NONE, TYPE=set 2015-02-25 11:32:51.314 [session-close Queue Worker 3] SessionManager$SessionCloseProc.process() FINEST: Executing connection close for: from=c2s@acme.domain.net/172.31.30.109_5222_10.0.0.1_49322, to=sess-man@other.domain.net, DATA=<iq type="set" from="c2s@other.domain.net/172.31.30.109_5222_10.0.0.1_49322" to="sess-man@other.domain.net" id="c4502e14-0454-4f0b-9144-f0327b94b5b0"><command node="STREAM_CLOSED" xmlns="http://jabber.org/protocol/commands"><x type="submit" xmlns="jabber:x:data"><field var="user-jid"><value>103@acme.domain.net/MyResource</value></field></x></command></iq>, SIZE=375, XMLNS=null, PRIORITY=SYSTEM, PERMISSION=NONE, TYPE=set 2015-02-25 11:32:51.315 [session-close Queue Worker 3] SessionManager.closeSession() FINE: Closing connection for: 103@acme.domain.net/MyResource 2015-02-25 11:32:51.315 [session-close Queue Worker 3] SessionManager.closeSession() FINE: Found parent session for: 103@acme.domain.net/MyResource

But at a certain point we get the weird thing:

2015-02-25 11:32:51.315 [in_7-sess-man] SessionManager.processPacket() FINEST: processing packet: from=103@acme.domain.net/MyResource, to=sess-man@other.domain.net, DATA=<iq type="error" from="103@acme.domain.net/MyResource" to="acme.domain.net" id="tigase-ping"><ping xmlns="urn:xmpp:ping"/><error code="404" type="wait"><recipient-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>, SIZE=244, XMLNS=null, PRIORITY=NORMAL, PERMISSION=NONE, TYPE=error, connection: XMPPResourceConnection=[user_jid=sess-man@other.domain.net, packets=18, connectioId=null, domain=other.domain.net, authState=NOT_AUTHORIZED, isAnon=false, isTmp=false] 2015-02-25 11:32:51.315 [in_7-sess-man] SessionManager.walk() FINEST: XMPPProcessorIfc: UrnXmppPing (urn:xmpp:ping)Request: from=103@acme.domain.net/MyResource, to=sess-man@other.domain.net, DATA=<iq type="error" from="103@acme.domain.net/MyResource" to="acme.domain.net" id="tigase-ping"><ping xmlns="urn:xmpp:ping"/><error code="404" type="wait"><recipient-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>, SIZE=244, XMLNS=null, PRIORITY=NORMAL, PERMISSION=NONE, TYPE=error, conn: XMPPResourceConnection=[user_jid=sess-man@other.domain.net, packets=19, connectioId=null, domain=other.domain.net, authState=NOT_AUTHORIZED, isAnon=false, isTmp=false] 2015-02-25 11:32:51.316 [in_7-sess-man] SessionManager.processPacket() INFO: Impossible happened, please report to developer packet: from=103@acme.domain.net/MyResource, to=sess-man@other.domain.net, DATA=<iq type="error" from="103@acme.domain.net/MyResource" to="acme.domain.net" id="tigase-ping"><ping xmlns="urn:xmpp:ping"/><error code="404" type="wait"><recipient-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>, SIZE=244, XMLNS=null, PRIORITY=NORMAL, PERMISSION=NONE, TYPE=error, connection: XMPPResourceConnection=[user_jid=sess-man@other.domain.net, packets=19, connectioId=null, domain=other.domain.net, authState=NOT_AUTHORIZED, isAnon=false, isTmp=false].

If you notice, the connection close is sent by another subdomain (other.domain.net). Is this OK / expected ?

the IQ stanza with the STREAM_CLOSE arrives to the session manager, but, surprise surprise, I get a message with "Impossible happened"... (may I humbly request to consider changing this message ? after two hours of debug, you can expect everything, but "impossible happened" is a little too much to digest ! :) )

Apart from the message, do you see anything wrong, but most of all, can you understand what is happening ? Everything because, sadly, when resumption_timeout passes, messages aren't neither persisted on database nor delivered if the client reconnects. Am I doing something wrong ? I'd be glad to find out so, or even find out that there is a problem that I can help fixing (as I always say to myself, we all love open source for that ! )

Thanks in advance,
Luca

Categories: Tigase Forums

Tigase server administration: Reconnecting service for component

Tigase XMPP Server Board - Wed, 02/25/2015 - 05:52

Hi,
as I run tigase 7.1.0-Snapshot, in the log I got these lines:
2015-02-25 17:17:51.956 [scheduler_pool-4-thread-1-c2s] ConnectionManager$1.run() FINE: Reconnecting service for component: c2s, to remote host: localhost on port: 5222 2015-02-25 17:17:51.957 [scheduler_pool-4-thread-1-c2s] ConnectionManager$1.run() FINE: Reconnecting service for component: c2s, to remote host: localhost on port: 5223 2015-02-25 17:17:51.962 [scheduler_pool-11-thread-1-s2s] ConnectionManager$1.run() FINE: Reconnecting service for component: s2s, to remote host: localhost on port: 5269 2015-02-25 17:17:51.964 [scheduler_pool-3-thread-1-bosh] ConnectionManager$1.run() FINE: Reconnecting service for component: bosh, to remote host: localhost on port: 5280 2015-02-25 17:17:51.964 [scheduler_pool-15-thread-1-ws2s] ConnectionManager$1.run() FINE: Reconnecting service for component: ws2s, to remote host: localhost on port: 5290 2015-02-25 17:17:51.964 [scheduler_pool-3-thread-1-bosh] ConnectionManager$1.run() FINE: Reconnecting service for component: bosh, to remote host: localhost on port: 5281
I want to know why tigase try to connect to these services in local host (I haven't any remote service and run tigase in a single node)?

the only special configuration I have is:
--bosh-ports = 5280,5281
bosh/connections/5281/socket = ssl
bosh/connections/5281/type = accept

Categories: Tigase Forums

Tigase server administration: RE: No reply from MUC when try to configure a Reserved Room

Tigase XMPP Server Board - Wed, 02/25/2015 - 04:30

Hamid Alimohammadi wrote:

When owner of a room try to change the default setting of a room (to make it Persistent, etc), we follow the XEP-0045 instructions and server responds to the Stanzas properly until the section that "Owner Submits Configuration Form": [[http://xmpp.org/extensions/xep-0045.html#example-159]]
Then the room owner fill out the bellow form accordingly and submit it to the service:
(The name of room is "testroom" and the owner is )

Actually you've made a mistake in your query - you are sending a dataform of type form (which was received from server) instead of type submit (to, well, submit the form) as the specification requires.
<x xmlns='jabber:x:data' type='form'>
should be changed to
<x xmlns='jabber:x:data' type='submit'>

Categories: Tigase Forums

Tigase server administration: RE: No reply from MUC when try to configure a Reserved Room

Tigase XMPP Server Board - Wed, 02/25/2015 - 02:39

Actually there was not there anything afterwards. Today I tried with another version (7.0.0-b3802), the last logfile line is like above log:
ModulesManager.process() FINEST: Finished class tigase.muc.modules.RoomConfigurationModule

And no more message is received. I run the XML with Psi XML console and my colleague with gloox, camaya.

Thanks again for help

Categories: Tigase Forums

Tigase server development: RE: Client timeout?

Tigase XMPP Server Board - Wed, 02/25/2015 - 00:55

Wojciech Kapcia wrote:

Handling of such connections and prevention of loosing messages on dropped connections was greatly improved in current development version - 7.0.0, which should be released soon.

I tried the relesed version - 7.0.0,feeling it has no improvement,when I turn off wifi, annother user also find it is online

and thne I tried use this configuration:

c2s/processors[s]=urn:xmpp:sm:3
c2s/watchdog_delay[L]=60000
c2s/watchdog_timeout[L]=60000
c2s/max-inactivity-time[L]=60
c2s/watchdog_ping_type=xmpp

all user connections broken

Categories: Tigase Forums

Tigase server administration: RE: No reply from MUC when try to configure a Reserved Room

Tigase XMPP Server Board - Tue, 02/24/2015 - 23:06

Hamid Alimohammadi wrote:

Thank you for reply.
I enabled --debug=muc,component,component2 and bellow is the Tigase.log.0 file readouts:
Could you please take a look at logs to see if anything is wrong?
---------------------------------------------------------------------------------------
[...]

Actually you've cut the logs right in the middle of processing. Or wasn't there anything afterwards?

Categories: Tigase Forums

Pages

Get in touch

We provide software products, consulting and custom development services

Tigase, Inc.
100 Pine Street, Suite 1250
San Francisco, CA 94111, USA
Phone: (415) 315 9771

Follow us on:

Twitter

Back to Top