Commit Graph

9623 Commits

Author SHA1 Message Date
Gunnar Hillert
4f88297de1 INT-2545 - Upgrade bundlor-plugin + docbook-reference-plugin
* Upgrade bundlor-plugin version to 0.1.2
* Upgrade docbook-reference-plugin to 0.1.5
2012-05-10 08:29:38 -04:00
Oleg Zhurakousky
e3e6ad7d91 Merge pull request #403 from garyrussell/INT-2485a
* INT-2485a:
  INT-2485 Orderly Shutdown
2012-05-10 08:11:07 -04:00
Gary Russell
0a12a496cc INT-2485 Orderly Shutdown
Initial commit - @ManagedOperation on IMBE

- can be invoked via JMX, <control-bus/>, or getting a reference to
the IMBE from the application context.

INT-2485 Updates After Review Comments (JIRA)

* Shutdown Schedulers first, and wait for them
* Add a force parameter, which overrides thread pool shutdown options
* Shutdown Sources/Channels after all thread pools have stopped
* Mark other components as OrderlyShutdownCapable (e.g. JMS/AMQP Listener containers) and shut them down first
* Wait for remaining time to allow for quiescence

Also
* remove TimeUnit parameter (not JMX-friendly); time limit is now always milliseconds
* If thread pools don't stop in time limit, force them down.

INT-2485 Handle Self-Destruction

Add shutdown-executor to IMBE.

When the shutdown was called on a Spring-Managed thread, the shutdown
was not clean because we timed out waiting for the current thread to
terminate. After that, we force terminated other components.

Now, by providing a dedicated Executor for the shutdown process, it
is used for the shutdown instead of the current thread. This Executor
is *not* shutdown.

It is not necessary to provide an Executor if the stopActiveComponents()
method is called on some other thread that is not involved in the
shutdown.

Also adds executor name to logs, when available.

INT-2485 Polishing

Fix MBean object name collision when running all tests.

INT-2485 Enable TCP Shutdown

Make TCP connection factories 'OrderlyShutdownCapable' so
they are stopped before schedulers/executors in order for
them to release any executor threads they are holding.

INT-2485 Polishing

Didn't need DirectFieldAccessor - scheduler and executor have
an accessor for the native ExecutorService.

Copyrights

INT-2485 Polishing

schemaLocation version.

INT-2485 PR Review Polishing
2012-05-10 08:10:00 -04:00
Gary Russell
77e3886a12 Merge pull request #424 from olegz/INT-2508 2012-05-09 13:57:32 -04:00
Oleg Zhurakousky
7d0dcf0805 INT-2508 Priority Channel FIFO
Fix a concurrency issue with the PriorityChannel by
introducing a private MessageWrapper; an implementation
of Message, to maintain the contract with the Comparator.

The MessageWrapper contains the original Message plus
an incremented sequence number, used as a tie-breaker,
to maintain FIFO semantics within priority.

Previously, the sequence number was added to, and removed
from, the headers of the original Message using a
DirectFieldAccessor.

This could cause concurrent modification
exceptions when it was removed.

INT-2508 polishing based on PR comments

INT-2508 Polish Whitespace
2012-05-09 13:50:08 -04:00
Oleg Zhurakousky
9235efe16b Merge pull request #431 from artembilan/INT-2542
* INT-2542:
  INT-2542: order attr. for logging-channel-adapter
2012-05-09 13:27:12 -04:00
Artem Bilan
1a5275a1ad INT-2542: order attr. for logging-channel-adapter
Additional tests for LoggingChannelAdapterParser
2012-05-09 13:25:31 -04:00
Gary Russell
a6c6120868 Merge pull request #422 from olegz/INT-2497 2012-05-08 16:55:41 -04:00
Oleg Zhurakousky
e1274f3bb4 INT-2497
changed warning message to error in AbstractCorrelatingMessageHandlerParser when both beanRef and expression are present, re-enabled commented out test to verify the error
2012-05-08 16:54:41 -04:00
Gary Russell
582817de29 Merge pull request #421 from olegz/INT-2247 2012-05-08 16:23:27 -04:00
Oleg Zhurakousky
f7ba317733 INT-2247
remove MockHttpServletRequest.java, MockHttpServletResponse.java in favor of Spring 3.1 mock classes

INT-2247 polishing

Revert imports
2012-05-08 16:22:19 -04:00
Oleg Zhurakousky
66a9df5641 Merge pull request #423 from garyrussell/INT-2519a
* INT-2519a:
  INT-2519 Fix Failing Test
2012-05-08 15:10:55 -04:00
Gary Russell
b271a7c42c INT-2519 Fix Failing Test
Depending on timing, it was possible the event the test
case was waiting for would never happen. With no timeout
the selector will block until the next IO event occurs,
and there is none in this test.

Adding a call to factory.close() forces a wakeup of
the selector, which will force the harvest to occur.

This is a test-only problem.
2012-05-08 14:33:14 -04:00
Gary Russell
c018176dd6 Merge pull request #420 from olegz/INT-2437 2012-05-08 13:52:36 -04:00
Oleg Zhurakousky
840a907668 INT-2437 upgraded mongo to 1.1.0.M1 2012-05-08 12:51:36 -04:00
Oleg Zhurakousky
52879a5617 Merge pull request #404 from garyrussell/INT-2519
* INT-2519:
  INT-2519 Fix Memory Leak
2012-05-07 13:00:48 -04:00
Gary Russell
120b2a3893 INT-2519 Fix Memory Leak
When using NIO, a Map of connections is maintained (keyed
by the SocketChannel) and used to manage registrations
for NIO events, timeouts etc.

When a connection is closed, the corresponding entry
should be removed from the map. The code to do this
is in AbstractConnectionFactory.processNioSelections().
However, if no socket timeout (soTimeout) has been set,
or it was explicitly set to 0, connections are not
removed from the map. This was because the timeout
logic and map cleanup is done in the same iteration
loop.

Now, if soTimeout is not set, the clean up loop
operates every nioHarvestInterval milliseconds
(default 2000), we don't want to run it on
every selector event.

In addition, it runs if the selectionCount is
zero - this might occur when a socket
is closed, when the selector.wakeup() is called.

INT-2519 Polishing

Rename connections field in NIO connection factories. Name
collision caused TestUtils problem on some platforms.
2012-05-07 12:59:34 -04:00
Oleg Zhurakousky
fd6c8d0b77 Merge pull request #419 from garyrussell/INT-1871a
* INT-1871a:
  INT-1871 Remove Schema Versions
2012-05-07 09:24:43 -04:00
Gary Russell
87f487007d INT-1871 Remove Schema Versions
Schemas update to 2.2 after the PR and the new
test config had 2.1 versioned schemas.

INT-1871 polishing, removed unused import
2012-05-07 09:23:11 -04:00
Oleg Zhurakousky
343e19e6fc Merge pull request #397 from garyrussell/INT-1871
* INT-1871:
  INT-1871 TCP CachingClientConnectionFactory
2012-05-07 08:26:16 -04:00
Gary Russell
411aa296a4 INT-1871 TCP CachingClientConnectionFactory
Pool based on algorithm used for spring-integration-file
CachingSessionFactory introduced by INT-2146. Refactored
that code to use the common SimplePool.

One difference to the previous implementation is the
ability to change the pool size dynamically.

If the size is reduced and more than the new size are
in use, items are closed as they are returned until
the pool size is as requested.

Initial commit.

Allow Pool Size Changes

Factor out Pool

Polishing

Pool Tests

Default forever

Javadocs, File

Polishing

INT-1871 PR Polishing

* Consistent/cleaner method names
* Track checkouts; reject release of 'foreign' objects.
* Add 'getAllocatedCount()'
2012-05-07 08:25:11 -04:00
Oleg Zhurakousky
ab0989d73a Merge pull request #415 from garyrussell/INT-2538
* INT-2538:
  INT-2538 Prepare Docs For 2.2
2012-05-04 10:59:53 -04:00
Gary Russell
6cc2215898 INT-2538 Prepare Docs For 2.2
* Move What's new in 2.1 to history.
* Add What's new in 2.2 section.
* Add note about caching connections in TCP

INT-2538 Polishing

PR Review comment.
2012-05-04 10:52:33 -04:00
Oleg Zhurakousky
37de51d866 Merge pull request #401 from garyrussell/INT-2511
* INT-2511:
  INT-2511 Change Default Socket Timeout
2012-05-04 10:33:05 -04:00
Gary Russell
409cc95607 INT-2511 Change Default Socket Timeout
Previously, when a client connection factory was used by
both an inbound and outbound adapter, the socket timeout
defaulted to 10 seconds.

This was inappropriate because, often, collaborating
channel adapters are used for aysnchronous messaaging and,
even when used for request/response, it is generatlly not
appropriate to timeout the socket due to a lack of recent
send activity.
2012-05-04 10:32:17 -04:00
Oleg Zhurakousky
7177764a64 Merge pull request #414 from garyrussell/INT-2536
* INT-2536:
  INT-2536 Create 2.2 Schemas
2012-05-04 10:05:11 -04:00
Gary Russell
95cd202be6 INT-2536 Create 2.2 Schemas
Add 2.2 versions of module schemas.

JMX is already covered by an existing pull request.

INT-2536 Schema Check

Bump version for schema check in
AbstractIntegrationNamespaceHandler.

INT-2536 Remove Schema Versions

Some test config files had 2.1 versioned schemas.
2012-05-04 10:04:01 -04:00
Oleg Zhurakousky
fae49aa593 Merge pull request #413 from garyrussell/INT-2535
* INT-2535:
  INT-2535 Update Version to 2.2.0.BUILD-SNAPSHOT
2012-05-04 08:58:52 -04:00
Gary Russell
87666d7d8e INT-2535 Update Version to 2.2.0.BUILD-SNAPSHOT
Also update bundlor version ranges for
SI and SF.
2012-05-04 08:57:48 -04:00
Oleg Zhurakousky
bfa55cbf58 Merge pull request #417 from garyrussell/INT-2472
* INT-2472:
  INT-2472 Capture Forked Stderr in Tests
2012-05-04 08:36:56 -04:00
Gary Russell
c3c7a984a4 INT-2472 Capture Forked Stderr in Tests
Previously, ForkUtil only captured stdout from the forked
process.

Now both stdout and stderr are captured and echoed to
the corresponding PrintStream of the calling process.

Also removed the 200ms delay between each stdout line
captured.
2012-05-01 17:09:39 -04:00
Gary Russell
14921e7598 Merge pull request #416 from artembilan/INT-2533a 2012-05-01 16:29:15 -04:00
Artem Bilan
476bdb00e0 INT-2533: polishing 2012-05-01 16:28:14 -04:00
Gary Russell
b6a113f331 Merge pull request #410 from artembilan/INT-2533 2012-04-26 12:39:46 -04:00
Artem Bilan
428bd46165 INT-2533:GF/ForkUtil fix for -cp with whitespaces 2012-04-26 12:38:47 -04:00
Gary Russell
fd3fa99dc8 Merge pull request #408 from ghillert/INT-2517 2012-04-26 11:42:34 -04:00
Gunnar Hillert
027b03af87 INT-2517 - Upgrade to Spring 3.1
* Update **build.gradle** and change the *springVersion* property to **3.1.1.RELEASE**
* Due to change in Spring 3.1, add missing method **getRawStatusCode()** in *org.springframework.integration.http.outbound.CookieTests*
2012-04-21 02:29:42 -04:00
Gary Russell
e0871ff6ce Merge pull request #402 from ghillert/INT-2512 2012-04-19 12:44:47 -04:00
Gunnar Hillert
0eae03025e INT-2512 - Upgrade to Gradle 1.0-rc-1
* Upgrade Gradle Wrapper
* Remove deprecation warnings
* Fix Sonar Build

Depends on: https://github.com/SpringSource/gradle-plugins/pull/1

INT-2512 - Improve declaration of optional and provided dependencies

INT-2512 - Reverted Bundlor Plugin Version Number.
With that change the Spring Integration specific part of the code changes is decoupled from the Bundlor pull request:

https://github.com/SpringSource/gradle-plugins/pull/1
.
Once the Bundlor plugin is updated and released, I can bump the version number (Only then, though all deprecation warnings will be gone).

INT-2512 - Code Review

**Do we really want to add mavenlocal() permanently? I usually add it locally when I need it**

Sorry my bad. Forgot to remove my local addition.

**snapshot?**

The Bundlor plugin relies on Snapshot releases for the Gradle plugin (I reverted the DocBook version).

**mixed leading tabs and spaces**

Removed every single leading space. Unfortunately, there were lots of spaces. Took a while. I hope this looks much better.

**Why are we removing this? Don't we need a local install any more?**

The Maven install logic is now handled by the customized/extended "maven" plugin in **publish-maven.gradle**. This is how Chris has set it up for the Spring Framework.

INT-2512 - Remove mavenLocal()

Change 'build/jacoco.exec' to '${buildDir.name}/jacoco.exec'.
2012-04-19 12:36:10 -04:00
Oleg Zhurakousky
ee9f7fb69c Merge pull request #400 from garyrussell/INT-2493a
* INT-2493a:
  INT-2493 Fix Failing Tests
2012-04-09 15:35:20 -04:00
Gary Russell
3ad32c7f63 INT-2493 Fix Failing Tests
After tightening the edit for no Filters on Get, two tests
failed that were incorrectly checking the filter was set.
2012-04-09 10:30:06 -04:00
Oleg Zhurakousky
0b015830d3 Merge pull request #399 from garyrussell/INT-2493
* INT-2493:
  INT-2493 Add Edit For Filter on Get
2012-04-09 09:35:21 -04:00
Gary Russell
b317ece4c8 INT-2493 Add Edit For Filter on Get
Previously, the Filter property was ignored for a Get
command; this adds a hard edit to ensure a filter is
not provided when this command is used.
2012-04-09 09:34:14 -04:00
Oleg Zhurakousky
6dca78a624 Merge pull request #398 from garyrussell/INT-2494
* INT-2494:
  INT-2494 Move listNames() Method to Session
2012-04-09 09:29:10 -04:00
Gary Russell
00a71eefd2 INT-2494 Move listNames() Method to Session
ExtendedSession, with the listNames() method was introduced
in 2.1.1 (INT-2492) to support mget commands on the gateway.

This was to avoid breaking any user implementations of Session
in a point release. However, we documented this was temporary
and the interfaces would be consolidated in 2.2., and
ExtendedSession would be removed.

This is that consolidation.
2012-04-06 16:35:17 -04:00
Spring Buildmaster
1ba24f7bb6 2012-04-05 04:50:49 -07:00
Spring Buildmaster
5734a5f736 Release version 2.1.1.RELEASE 2012-04-05 04:50:44 -07:00
Oleg Zhurakousky
aec1467b6b INT-2434 lower-cased ChannelInitializer bean name 2012-04-04 14:27:58 -04:00
Gary Russell
d1d4a182b4 Merge pull request #395 from olegz/INT-2496 2012-03-30 14:56:45 -04:00
Oleg Zhurakousky
554468517e INT-2496 GemFire Schema Documentation
Fix Gemfire schema to eliminate reference to a file adapter. Added schemadoc for error-channel while at it
2012-03-30 14:55:34 -04:00