Fixes

  • #8 XML parser no longer passes malformed XML statements to server.
  • #1396 & #663 User roster behaves correctly. Tigase now waits for user authorization before users are added to a Roster.
  • #1488 NPE in ad-hoc for managing external components fixed.
  • #1602 Minor optimization in MessageCarbons with new functions added to XMPPResourceConnection.
  • #2003 Fixed bug with C2S streams where server would not always overwrite from attribute with full JID in subcription-related presence stanzas.
  • #2118 Username modification bugfix. Tigase now returns "" for blank usernames instead of string after a username has been made blank.
  • #2859 & #2997 STARTTLS stream error on SSL sockets fixed.
  • #2860 Fixed issue with SSL socket client certificate not working.
  • #2877 Fixed issue in Message Carbons if message contains AMP payload.
  • #3034 Streamlined primitive and Object array handling.
  • #3067 Fixed Bug where if duplicate commands were sent to MS SQLServer a race condition would occur.
  • #3075 Fixed error when compiling Tigase in Red Hat Enterprise Linux v6.
  • #3080 --net-buff-high-throughput now parses integers properly. Setting no longer reverts to default when new values are set.
  • #3126 Calculation of percentage of heap memory used in Statistics now selects proper heap.
  • #3131 Fixed messages with AMP payload bound for plugins getting redirected to AMP for processing.
  • #3150 Default Log level changed for certain records. All log entries with skipping admin script now have log level FINEST instead of CONFIG
  • #3158 Fixed issue with OSGi not reporting proper version, and PubSub errors in OSGi mode.
  • #3159 User Privacy lists now activate properly and does not wait for presence stanza to filter packets.
  • #3164 Fixed NPE in StreamManagementIOProcessor when <a/> is processed after connection is closed.
  • #3166 NPE in SessionManager checking SSL null connections fixed.
  • #3181 S2S connection multiplexing now has consistent behavior.
  • #3194 Fixed issue with single long lasting HTTP connection blocking other HTTP requests. Default timeout set to 4 threads after 60 seconds.
  • #3200 Implemented a faster way to close stale connections using MS SQL server, reducing calm down time after large user disconnects.
  • #3203 Correct presence status shows for contacts if authorization was accepted while user was offline.
  • #3223 GetUserInfo ad-hoc command no longer omits information about local sessions when a remote session is active.
  • #3226 Fixed NPE & argument type mismatch in Pubsub.
  • #3245 Fixed ClassCastException when Websocket is configured to use SSL.
  • #3249 JabberIQVersion plugin now returns proper client information when requested from self.
  • #3259 Websocket no longer loops when receiving stanzas between 32767 and 65535 bytes in size.
  • #3261 Fixed issue with duplicate disco#info responses.
  • #3274 NPE when removing roster nickname fixed.
  • #3307 Rosters are no longer re-saved when a user logs in and roster is read resulting in a performance boost.
  • #3328 Presence processing by PEP plugin optimized.
  • #3336 Fixed issues with reloading vhosts in trusted after configuration change.
  • #3337 tls-jdk-nss-bug-workaround-active is now disabled by default. This fix is disabled by default which may impact older OpenSSL versions that may no longer be supported. You may enable this using an init.properties setting.
  • #3341 IQ Packet processing changed for packets sent to bare JID in Cluster mode.
  • #3372 Fixed NPE when presence was re-broadcasted to users who did not exit server gracefully.
  • #3374 PubSub Schema changed to be more compatible with MS SQL.
  • #3375 Users removed VIA REST commands are now disconnected immediately.
  • #3386 Fixed AMP logic to avoid querying for (default) Privacy list if user does not exist.
  • #3389 Fixed issue of sending packets to connections that were closed, but connection write lock had not been acquired.
  • #3401 Multiple issues fixed with Tigase.IM web client.
  • #3422 UTC Timestamps now enforced inside cluster_nodes table.
  • #3440 Fixed WebSocket error 12030 showing unexpectedly.
  • #3446 Fixed Installer configuring MUC incorrectly.
  • #3449 Wrapper.conf updated with current library folder for windows Service wrapper.
  • #3453 Fixed NPE when using comparator when sorting messages.
  • #3485 Fixed JDBCMsgRepository inserting duplicate user JID into table while using AMP.
  • #3489 Various fixes to Tigase test suite. Fixed race condition from XMPPSession conflicts when new sessions and closing session events happen at the same time.
  • #3495 Fixed messages being duplicated by message carbons.
  • #3499 Various fixes to AMP component.
  • #3530 Fixed null cert chain error when connecting to other servers using S2S connection with StartTLS.
  • #3550 Fixed NPE in sess-man when trying to delete all user information using Pidgin or Psi.
  • #3556 JavaDoc updated to include documentation for xmltools, tigase-extras, and tigase-util packages.
  • #3559 Fixed Web admin UI not updating Cluster node when it id disconnected.
  • #3579 Fixed NPE in SimpleParser.
  • #3580 Replaced misleading feature not implemented error when SM attempts to put a packet to processor and queue is full.
  • #3598 Fixed error in removing users from blocked list.
  • #3599 Fixed FlexibleOfflineMessages not being delivered to connection due to lack of explicit connection addressing.
  • #3612 Fixed issue when processing packets sent to full JID in cluster mode when user is connected to more than one cluster node at once.
  • #3619 Fixed issue with non-presistent contacts being unable to be added to roster.
  • #3649 Changed privacy list processing to always allow communication between XMPP connections with the same BareJID.
  • #3655 Increased max loop in infinity loop detection logic to 100000 in order to aid larger transfers.
  • #3656 Add option to BOSH output command without a timer task to avoid generation of packets to closed connections.
  • #3686 XHTML-IM parser has been fixed, restoring XEP-0071 functionality.
  • #3688 Issues with Eventbus in cluster mode fixed.
  • #3689 Avoid using sender address when packets are returned from Cluster Manager using stream management.
  • #3717 Support added to store messages without <body/> element if storage method other than <body/> is used. Support also added for JAXMPP to retrieve whole element from Message Archiving instead of only <body>.
  • #3718 Removed DISCONNECTING! debug stanza from AbstractWebSocketConnector.java that was causing NPE when user fails authentication in WebSocket.
  • #3753 Fixed NPE when using Blocking command.
  • #3775 Fixed ThreadExceptionHandler error in Tigase mailer.
  • #3781 Fixed issue with sending C2S message "The user connection is no longer active".
  • #3800 Changed Jenkins to always pull latest binaries from repositories. Windows wrapper changed to use wildcards to load /jars folder.
  • #3848 Changes made to JDBCMessageArchiveRepository to fix potential MySQL deadlocks when adding entries to repository.
  • #3902 Fixed issue where wss:// connections were closed after 3 minutes of inactivity.
  • #3910 Fixed NPE in SessionManager when session was closed during execution of everyMinute method.
  • #3911 Fixed load distribution error between threads that could cause high CPU usage.
  • #3931 Fixed error caused by AMP running in clustered installations.
  • #3966 Changed type of msg & body columns in muc_history table for SQLServer to prevent loss of special characters.
  • #3973 Adjusted throttling settings for S2S and cluster connections.
  • #3977 Fixed MUC History to reflect messages from JID of room and not JID of original sender.
  • #3984 Fixed distinct usage on large data which causes errors on lookup of PubSub nodes in MongoDB.
  • #3970 Fixed duplication of messages with AMP payload in cluster mode.
  • #4044 Fixed various web installer issues.
  • #4051 Fixed NPE in java when processing message with no body.
  • #4052 Fixed issue with ClusterRepoItem not properly resulting in tigase.db.comp.RepositoryChangeListenerIfc.itemUpdated(Item) being executed.
  • #4056 Items removed from cluster repository are not removed from memory correctly.
  • #4071 Updated groovy script to properly add owner to node creation VIA ad-hoc command.
  • #4142 Updated wrapper.conf file to match tigase.conf default settings.
  • #4183 Fixed issue where objects monitored by Ghostbuster.java in MUC could not be removed by it.
  • #4185 Fixed issue with PacketCounter that caused duplicate messages to be sent on stream resumption.
  • #4188 Standardized timestamp between AbstractMessageArchiveRepository and TimestampHelper.
  • #4262 Fixed messages getting lost when StreamResumption is used when a disconnected user reconnects to the server. This issue is also fixed on servers using ACS component.
  • #4298 ACS - Fixed messages getting dropped when sent to users offline or on unstable connections.
  • #4365 Fixed direct presence not working with non-roster elements using barejid.
  • #4524 Fixed NPE during startup causd by Cluster Connection Manager.
  • #4672 Fixed UnsupportedOperationException error occuring during configuration change of WebSocketClientConnectionClustered.
  • #4747 converter.groovy script is now depcreciated.
  • #4760 Fixed NPE upon anonymous user conection, changed log notification to reduce clutter.
  • #4762 Fixed delayed processing of WebSocket data frame if frame is both TCP and ping frame.
  • #4786 Changed timeout for cluster repository connection during acceptence of incoming cluster connection from 15ms to 15s.
  • #4787 Fixed possible NPE in ClientStateIndication when GETFEATURES command is executed before session is confirmed not null.
  • #4793 Fixed NPE in statistics occuring when certain values are null.
  • #4812 Fixed possible NPE in ClientStateIndication and mobile optimizations if packets are processed before resource binding is finished.
  • #4818 Fixed StampComparitor not comparing packets stamped with XEP-0203 Delayed Delivery instructions.
  • #4820 Now fixed issue where it was impossible to remove user from all groups.
  • Patch added to fix ConcurrentModificationException in BlockingCommand plugin.
  • Fixed negation in SASL mechanism selector.
  • Fixed checking for user session without localpart in to address.
  • Fixed resourceDefPrefix from accumulating resource names when components are added or removed in web console.
  • Fixed [F] property not converting to float.
  • Distributed EventBus improved to allow POJO based events to be fired locally.
  • Added missing classes to IzPack installer.
  • Tigase.xml removed from documentation and default tigase.conf file.
  • Logs function added to eventbus publisher operations.
  • Fixed responding to same hostname as sender as "to" in stream-error stanza.
  • Fixed issue where attempts to delete empty MUC room would create and then destroy room.
  • Added startup information to log to indicate when server is ready.
  • Fixed a divide by zero error in Java Garbage Collection.
  • Fixed -see-other-host causing 'Foreign key constraint is incorrectly formed' error while using SeeOtherHostDB.
  • Fixed NPE occuring when attempting to load from repository that has not been initilized yet.
  • Fixed NPE in CounterDataFileLogger by implementing Stringbuilder to create statistics.
  • Certificate directories from old or improper installations will now be ignored if empty.