Skip to content

Commit d744dbe

Browse files
authored
Merge pull request #639 from naver/release/3.5.1
3.5.1 release Reviewed by : geunwoo
2 parents 0cdde42 + e26f266 commit d744dbe

File tree

64 files changed

+599
-598
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+599
-598
lines changed

NOTICE

+27-29
Original file line numberDiff line numberDiff line change
@@ -18,35 +18,6 @@ limitations under the License.
1818
This project contains subcomponents with separate copyright notices and license terms.
1919
Your use of the source code for these subcomponents is subject to the terms and conditions of the following licenses.
2020

21-
=====
22-
23-
hyperic/sigar
24-
http://sigar.hyperic.com/
25-
26-
27-
Copyright (c) 2004-2011 VMware, Inc.
28-
29-
Licensed under the Apache License, Version 2.0 (the "License");
30-
you may not use this file except in compliance with the License.
31-
You may obtain a copy of the License at
32-
33-
http://www.apache.org/licenses/LICENSE-2.0
34-
35-
Unless required by applicable law or agreed to in writing, software
36-
distributed under the License is distributed on an "AS IS" BASIS,
37-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
38-
See the License for the specific language governing permissions and
39-
limitations under the License.
40-
41-
ADDITIONAL LICENSE INFORMATION:
42-
43-
Hyperic SIGAR includes some third-party open source components
44-
in its distribution. The list below identifies the community or
45-
organization and links to their appropriate license terms.
46-
47-
The Hyperic team would like to thank all the communities
48-
of the projects listed below for their contributions.
49-
5021
----------------------------------------------------------
5122
Components under the Apache License 2.0:
5223
----------------------------------------------------------
@@ -71,6 +42,33 @@ License: http://www.apache.org/licenses/LICENSE-2.0
7142
Components under BSD/MIT Style Licenses:
7243
----------------------------------------------------------
7344

45+
The following components are included without modification:
46+
47+
- oshi -
48+
Information: https://github.com/oshi/oshi
49+
License: MIT License
50+
51+
Copyright (c) 2010 - 2020 The OSHI Project Contributors: https://github.com/oshi/oshi/graphs/contributors
52+
53+
Permission is hereby granted, free of charge, to any person obtaining a copy
54+
of this software and associated documentation files (the "Software"), to deal
55+
in the Software without restriction, including without limitation the rights
56+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
57+
copies of the Software, and to permit persons to whom the Software is
58+
furnished to do so, subject to the following conditions:
59+
60+
The above copyright notice and this permission notice shall be included in all
61+
copies or substantial portions of the Software.
62+
63+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
64+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
65+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
66+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
67+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
68+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
69+
SOFTWARE.
70+
71+
7472
The following components are included with modification:
7573

7674
- solaris get_mib2 -

README.md

+11-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
* nGrinder 3.5.0 has been released. See https://github.com/naver/ngrinder/releases
1+
* nGrinder 3.5.1 has been released. See https://github.com/naver/ngrinder/releases
22

33
nGrinder
44
========
@@ -49,6 +49,16 @@ Download
4949
You can download the latest nGrinder in the following link.
5050
* https://github.com/naver/ngrinder/releases
5151

52+
Quick Start
53+
-------------
54+
You can start nGrinder by executing following command.
55+
56+
```
57+
java -jar ngrinder-controller-{version}.war
58+
```
59+
60+
And then access it by using a browser. http://localhost:8080
61+
5262

5363
Documentation
5464
-------------

RELEASE-NOTE.md

+11
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
3.5.1 (2020.08.31)
2+
==================
3+
* Changes
4+
* Support Java 11.
5+
* nGrinder now supports Java 11. Controller & Agent supports Java 1.8 or above.
6+
* Bump several libraries version up.
7+
8+
* Trivial Fix
9+
* Remove mobile phone column from NUSER table.
10+
* Make several UI improvements.
11+
112
3.5.0 (2020.07.30)
213
==================
314
* New Feature

build.gradle

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ allprojects {
22
apply plugin: "idea"
33

44
group = "org.ngrinder"
5-
version = "3.5.0"
5+
version = "3.5.1"
66

77
idea {
88
module {
@@ -31,14 +31,14 @@ subprojects {
3131
ext {
3232
profile = project.hasProperty('profile') ? profile : 'development'
3333
slf4j_version = "1.7.28"
34-
spring_security_version = "5.1.6.RELEASE"
35-
spring_boot_version = "2.1.8.RELEASE"
34+
spring_security_version = "5.3.4.RELEASE"
35+
spring_boot_version = "2.3.3.RELEASE"
3636
svnkit_version = "1.8.3-scm1"
37-
hibernate_version = "5.3.11.Final"
38-
hazelcast_version = "3.11.1"
37+
hibernate_version = "5.4.20.Final"
38+
hazelcast_version = "4.0.2"
3939
mockito_version = "2.23.4"
4040
handlebars_version = "4.0.5"
41-
jackson_version = "2.9.9"
41+
jackson_version = "2.11.2"
4242
}
4343

4444
repositories {

gradle.properties

+2
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
org.gradle.daemon=true
2+
jna.version=5.6.0
3+
groovy.version=3.0.5

lib/sigar-native-1.0.jar

-2.16 MB
Binary file not shown.

ngrinder-controller/build.gradle

+2
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,14 @@ dependencies {
7474
compile (group: "com.hazelcast", name: "hazelcast-spring", version: hazelcast_version)
7575
compile (group: "org.kohsuke", name: "github-api", version: "1.99")
7676
compile (group: "commons-validator", name: "commons-validator", version: "1.6")
77+
compile (group: 'org.codehaus.groovy', name: 'groovy-jsr223', version: '3.0.5')
7778

7879
compileOnly (group: "org.projectlombok", name: "lombok", version: "1.18.8")
7980
annotationProcessor (group: "org.projectlombok", name: "lombok", version: "1.18.8")
8081

8182
providedRuntime (group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: spring_boot_version)
8283

84+
testCompile (group: 'junit', name: 'junit', version: '4.13')
8385
testCompile (group: "org.easytesting", name: "fest-assert", version: "1.4")
8486
testCompile (group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: spring_boot_version)
8587

ngrinder-controller/src/main/java/org/ngrinder/agent/service/AgentService.java

+2
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
import org.slf4j.Logger;
4949
import org.slf4j.LoggerFactory;
5050
import org.springframework.beans.factory.annotation.Value;
51+
import org.springframework.context.annotation.Profile;
5152
import org.springframework.stereotype.Service;
5253
import org.springframework.transaction.annotation.Transactional;
5354

@@ -80,6 +81,7 @@
8081
*
8182
* @since 3.0
8283
*/
84+
@Profile("production")
8385
@Service
8486
@RequiredArgsConstructor
8587
public class AgentService extends AbstractAgentService

ngrinder-controller/src/main/java/org/ngrinder/common/util/JsonUtils.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public static <T> T deserialize(String jsonString, Class<T> clazz) {
3636
}
3737
}
3838

39-
public static <T> T deserialize(String jsonString, TypeReference typeReference) {
39+
public static <T> T deserialize(String jsonString, TypeReference<T> typeReference) {
4040
try {
4141
return objectMapper.readValue(jsonString, typeReference);
4242
} catch (IOException e) {

ngrinder-controller/src/main/java/org/ngrinder/infra/config/DynamicCacheConfig.java

+10-8
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
import com.hazelcast.config.*;
1818
import com.hazelcast.core.Hazelcast;
1919
import com.hazelcast.core.HazelcastInstance;
20-
import com.hazelcast.core.ITopic;
2120
import com.hazelcast.spi.merge.LatestUpdateMergePolicy;
2221
import com.hazelcast.spring.cache.HazelcastCacheManager;
2322
import com.hazelcast.spring.context.SpringManagedContext;
23+
import com.hazelcast.topic.ITopic;
2424
import lombok.RequiredArgsConstructor;
2525
import net.grinder.util.NetworkUtils;
2626
import org.ngrinder.common.constant.ClusterConstants;
@@ -131,8 +131,8 @@ private TopicConfig getTopicConfig() {
131131
return topicConfig;
132132
}
133133

134-
private Map<String, Object> getClusterMemberAttributes() {
135-
Map<String, Object> attributes = new HashMap<>();
134+
private Map<String, String> getClusterMemberAttributes() {
135+
Map<String, String> attributes = new HashMap<>();
136136
attributes.put(REGION_ATTR_KEY, config.getRegion());
137137
return attributes;
138138
}
@@ -184,14 +184,16 @@ void addDistCache(String cacheName, int timeout, int count) {
184184
nearCacheConfig.setTimeToLiveSeconds(timeout);
185185

186186
if (count > 0) {
187-
mapConfig.setEvictionPolicy(EvictionPolicy.LRU)
188-
.getMaxSizeConfig()
189-
.setSize(count)
190-
.setMaxSizePolicy(MaxSizeConfig.MaxSizePolicy.PER_NODE);
187+
EvictionConfig evictionConfig = new EvictionConfig();
188+
evictionConfig.setEvictionPolicy(EvictionPolicy.LRU);
189+
evictionConfig.setSize(count);
190+
evictionConfig.setMaxSizePolicy(MaxSizePolicy.PER_NODE);
191+
192+
mapConfig.setEvictionConfig(evictionConfig);
191193

192194
nearCacheConfig.getEvictionConfig()
193195
.setSize(count)
194-
.setMaximumSizePolicy(EvictionConfig.MaxSizePolicy.ENTRY_COUNT)
196+
.setMaxSizePolicy(MaxSizePolicy.ENTRY_COUNT)
195197
.setEvictionPolicy(EvictionPolicy.LRU);
196198
}
197199

ngrinder-controller/src/main/java/org/ngrinder/infra/hazelcast/HazelcastService.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
import com.hazelcast.core.HazelcastInstance;
44
import com.hazelcast.core.IExecutorService;
5-
import com.hazelcast.core.IMap;
6-
import com.hazelcast.core.Member;
5+
import com.hazelcast.map.IMap;
6+
import com.hazelcast.cluster.Member;
77
import org.ngrinder.common.exception.NGrinderRuntimeException;
88
import org.ngrinder.infra.hazelcast.topic.message.TopicEvent;
99
import org.slf4j.Logger;

ngrinder-controller/src/main/java/org/ngrinder/infra/hazelcast/topic/subscriber/TopicSubscriber.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package org.ngrinder.infra.hazelcast.topic.subscriber;
22

3-
4-
import com.hazelcast.core.Message;
5-
import com.hazelcast.core.MessageListener;
3+
import com.hazelcast.topic.Message;
4+
import com.hazelcast.topic.MessageListener;
65
import org.ngrinder.infra.hazelcast.topic.listener.TopicListener;
76
import org.ngrinder.infra.hazelcast.topic.message.TopicEvent;
87

ngrinder-controller/src/main/java/org/ngrinder/perftest/controller/PerfTestApiController.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import org.ngrinder.agent.service.AgentService;
2222
import org.ngrinder.common.constant.ControllerConstants;
2323
import org.ngrinder.common.constants.GrinderConstants;
24-
import org.ngrinder.common.util.DateUtils;
2524
import org.ngrinder.common.util.JsonUtils;
2625
import org.ngrinder.infra.config.Config;
2726
import org.ngrinder.infra.hazelcast.HazelcastService;
@@ -45,7 +44,6 @@
4544
import org.springframework.data.domain.PageRequest;
4645
import org.springframework.data.domain.Pageable;
4746
import org.springframework.data.domain.Sort;
48-
import org.springframework.data.domain.Sort.Direction;
4947
import org.springframework.data.web.PageableDefault;
5048
import org.springframework.web.bind.annotation.*;
5149

@@ -65,6 +63,8 @@
6563
import static org.ngrinder.common.util.ExceptionUtils.processException;
6664
import static org.ngrinder.common.util.Preconditions.*;
6765
import static org.ngrinder.common.util.TypeConvertUtils.cast;
66+
import static org.springframework.data.domain.Sort.Direction.*;
67+
import static org.springframework.data.domain.Sort.by;
6868

6969
/**
7070
* Performance Test api Controller.
@@ -408,11 +408,11 @@ private PerfTest getOneWithPermissionCheck(User user, Long id, boolean withTag)
408408

409409
private Pair<Page<PerfTest>, Pageable> getPerfTests(User user, String query, String tag, String queryFilter, Pageable pageableParam) {
410410
Pageable pageable = PageRequest.of(pageableParam.getPageNumber(), pageableParam.getPageSize(),
411-
pageableParam.getSort().isUnsorted() ? new Sort(Direction.DESC, "id") : pageableParam.getSort());
411+
pageableParam.getSort().isUnsorted() ? by(DESC, "id") : pageableParam.getSort());
412412
Page<PerfTest> tests = perfTestService.getPagedAll(user, query, tag, queryFilter, pageable);
413413
if (tests.getNumberOfElements() == 0) {
414414
pageable = PageRequest.of(0, pageableParam.getPageSize(),
415-
pageableParam.getSort().isUnsorted() ? new Sort(Direction.DESC, "id") : pageableParam.getSort());
415+
pageableParam.getSort().isUnsorted() ? by(DESC, "id") : pageableParam.getSort());
416416
tests = perfTestService.getPagedAll(user, query, tag, queryFilter, pageableParam);
417417
}
418418
return Pair.of(tests, pageable);
@@ -682,7 +682,7 @@ private Map<String, Object> getReportPluginGraphData(long id, String plugin, Str
682682
@GetMapping({"/last", "", "/"})
683683
public List<PerfTest> getAll(User user, @RequestParam(defaultValue = "0") int page,
684684
@RequestParam(defaultValue = "1") int size) {
685-
PageRequest pageRequest = PageRequest.of(page, size, new Sort(Direction.DESC, "id"));
685+
PageRequest pageRequest = PageRequest.of(page, size, by(DESC, "id"));
686686
Page<PerfTest> testList = perfTestService.getPagedAll(user, null, null, null, pageRequest);
687687
return testList.getContent();
688688
}

ngrinder-controller/src/main/java/org/ngrinder/region/service/RegionService.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import com.google.common.base.Suppliers;
1818
import com.google.common.collect.Maps;
1919
import com.hazelcast.core.HazelcastInstance;
20-
import com.hazelcast.core.Member;
20+
import com.hazelcast.cluster.Member;
2121
import lombok.RequiredArgsConstructor;
2222
import net.grinder.util.NetworkUtils;
2323
import org.apache.commons.lang.StringUtils;

0 commit comments

Comments
 (0)