--- a/.hgtags Thu Jan 03 13:22:02 2019 -0500
+++ b/.hgtags Thu Jan 03 13:22:45 2019 -0500
@@ -530,3 +530,4 @@
7d4397b43fa305806160785a4c7210600d59581a jdk-12+24
11033c4ada542f9c9a873314b6ecf60af19e8256 jdk-13+1
7496df94b3b79f3da53925d2d137317715f11d97 jdk-12+25
+50677f43ac3df9a8684222b8893543c60f3aa0bd jdk-13+2
--- a/src/hotspot/share/interpreter/templateTable.cpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/interpreter/templateTable.cpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -222,25 +222,6 @@
def(code, flags, in, out, (Template::generator)gen, (int)cc);
}
-#if defined(TEMPLATE_TABLE_BUG)
-//
-// It appears that gcc (version 2.91) generates bad code for the template
-// table init if this macro is not defined. My symptom was an assertion
-// assert(Universe::heap()->is_in(obj), "sanity check") in handles.cpp line 24.
-// when called from interpreterRuntime.resolve_invoke().
-//
- #define iload TemplateTable::iload
- #define lload TemplateTable::lload
- #define fload TemplateTable::fload
- #define dload TemplateTable::dload
- #define aload TemplateTable::aload
- #define istore TemplateTable::istore
- #define lstore TemplateTable::lstore
- #define fstore TemplateTable::fstore
- #define dstore TemplateTable::dstore
- #define astore TemplateTable::astore
-#endif // TEMPLATE_TABLE_BUG
-
void TemplateTable::initialize() {
if (_is_initialized) return;
@@ -530,20 +511,6 @@
_is_initialized = true;
}
-#if defined(TEMPLATE_TABLE_BUG)
- #undef iload
- #undef lload
- #undef fload
- #undef dload
- #undef aload
- #undef istore
- #undef lstore
- #undef fstore
- #undef dstore
- #undef astore
-#endif // TEMPLATE_TABLE_BUG
-
-
void templateTable_init() {
TemplateTable::initialize();
}
--- a/src/hotspot/share/runtime/globals.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/runtime/globals.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -53,6 +53,13 @@
#define falseInTiered true
#endif
+// Default and minimum StringTable and SymbolTable size values
+// Must be powers of 2
+const size_t defaultStringTableSize = NOT_LP64(1024) LP64_ONLY(65536);
+const size_t minimumStringTableSize = 128;
+const size_t defaultSymbolTableSize = 32768; // 2^15
+const size_t minimumSymbolTableSize = 1024;
+
#include CPU_HEADER(globals)
#include OS_HEADER(globals)
#include OS_CPU_HEADER(globals)
--- a/src/hotspot/share/runtime/os.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/runtime/os.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -51,9 +51,6 @@
class Thread;
class JavaThread;
-class Event;
-class DLL;
-class FileHandle;
class NativeCallStack;
class methodHandle;
--- a/src/hotspot/share/utilities/globalDefinitions.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/utilities/globalDefinitions.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -414,16 +414,6 @@
const int max_method_code_size = 64*K - 1; // JVM spec, 2nd ed. section 4.8.1 (p.134)
//----------------------------------------------------------------------------------------------------
-// Default and minimum StringTable and SymbolTable size values
-// Must be a power of 2
-
-const size_t defaultStringTableSize = NOT_LP64(1024) LP64_ONLY(65536);
-const size_t minimumStringTableSize = 128;
-
-const size_t defaultSymbolTableSize = 32768; // 2^15
-const size_t minimumSymbolTableSize = 1024;
-
-//----------------------------------------------------------------------------------------------------
// Object alignment, in units of HeapWords.
//
// Minimum is max(BytesPerLong, BytesPerDouble, BytesPerOop) / HeapWordSize, so jlong, jdouble and
@@ -839,8 +829,6 @@
class ClassFileStream;
-class Event;
-
class Thread;
class VMThread;
class JavaThread;
@@ -853,17 +841,11 @@
class CompiledMethod;
class nmethod;
class RuntimeBlob;
-class OSRAdapter;
-class I2CAdapter;
-class C2IAdapter;
class CompiledIC;
class relocInfo;
class ScopeDesc;
class PcDesc;
-class Recompiler;
-class Recompilee;
-class RecompilationPolicy;
class RFrame;
class CompiledRFrame;
class InterpretedRFrame;
@@ -872,7 +854,6 @@
class javaVFrame;
class interpretedVFrame;
class compiledVFrame;
-class deoptimizedVFrame;
class externalVFrame;
class entryVFrame;
@@ -888,12 +869,9 @@
class JavaCallWrapper;
class oopDesc;
-class metaDataOopDesc;
class NativeCall;
-class zone;
-
class StubQueue;
class outputStream;
@@ -906,10 +884,6 @@
class DebugInfoReadStream;
class DebugInfoWriteStream;
class LocationValue;
-class ConstantValue;
-class IllegalValue;
-
-class MonitorArray;
class MonitorInfo;
@@ -1124,111 +1098,15 @@
// Avoid non-portable casts with these routines (DEPRECATED)
// NOTE: USE Bytes class INSTEAD WHERE POSSIBLE
-// Bytes is optimized machine-specifically and may be much faster then the portable routines below.
+// Bytes is optimized machine-specifically and may be much faster than the portable routines below.
// Given sequence of four bytes, build into a 32-bit word
// following the conventions used in class files.
-// On the 386, this could be realized with a simple address cast.
-//
-// This routine takes eight bytes:
-inline u8 build_u8_from( u1 c1, u1 c2, u1 c3, u1 c4, u1 c5, u1 c6, u1 c7, u1 c8 ) {
- return (( u8(c1) << 56 ) & ( u8(0xff) << 56 ))
- | (( u8(c2) << 48 ) & ( u8(0xff) << 48 ))
- | (( u8(c3) << 40 ) & ( u8(0xff) << 40 ))
- | (( u8(c4) << 32 ) & ( u8(0xff) << 32 ))
- | (( u8(c5) << 24 ) & ( u8(0xff) << 24 ))
- | (( u8(c6) << 16 ) & ( u8(0xff) << 16 ))
- | (( u8(c7) << 8 ) & ( u8(0xff) << 8 ))
- | (( u8(c8) << 0 ) & ( u8(0xff) << 0 ));
-}
-
-// This routine takes four bytes:
-inline u4 build_u4_from( u1 c1, u1 c2, u1 c3, u1 c4 ) {
- return (( u4(c1) << 24 ) & 0xff000000)
- | (( u4(c2) << 16 ) & 0x00ff0000)
- | (( u4(c3) << 8 ) & 0x0000ff00)
- | (( u4(c4) << 0 ) & 0x000000ff);
-}
-
-// And this one works if the four bytes are contiguous in memory:
-inline u4 build_u4_from( u1* p ) {
- return build_u4_from( p[0], p[1], p[2], p[3] );
-}
-
-// Ditto for two-byte ints:
-inline u2 build_u2_from( u1 c1, u1 c2 ) {
- return u2((( u2(c1) << 8 ) & 0xff00)
- | (( u2(c2) << 0 ) & 0x00ff));
-}
-
-// And this one works if the two bytes are contiguous in memory:
+// This one works if the two bytes are contiguous in memory:
inline u2 build_u2_from( u1* p ) {
- return build_u2_from( p[0], p[1] );
-}
-
-// Ditto for floats:
-inline jfloat build_float_from( u1 c1, u1 c2, u1 c3, u1 c4 ) {
- u4 u = build_u4_from( c1, c2, c3, c4 );
- return *(jfloat*)&u;
-}
-
-inline jfloat build_float_from( u1* p ) {
- u4 u = build_u4_from( p );
- return *(jfloat*)&u;
-}
-
-
-// now (64-bit) longs
-
-inline jlong build_long_from( u1 c1, u1 c2, u1 c3, u1 c4, u1 c5, u1 c6, u1 c7, u1 c8 ) {
- return (( jlong(c1) << 56 ) & ( jlong(0xff) << 56 ))
- | (( jlong(c2) << 48 ) & ( jlong(0xff) << 48 ))
- | (( jlong(c3) << 40 ) & ( jlong(0xff) << 40 ))
- | (( jlong(c4) << 32 ) & ( jlong(0xff) << 32 ))
- | (( jlong(c5) << 24 ) & ( jlong(0xff) << 24 ))
- | (( jlong(c6) << 16 ) & ( jlong(0xff) << 16 ))
- | (( jlong(c7) << 8 ) & ( jlong(0xff) << 8 ))
- | (( jlong(c8) << 0 ) & ( jlong(0xff) << 0 ));
-}
-
-inline jlong build_long_from( u1* p ) {
- return build_long_from( p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7] );
-}
-
-
-// Doubles, too!
-inline jdouble build_double_from( u1 c1, u1 c2, u1 c3, u1 c4, u1 c5, u1 c6, u1 c7, u1 c8 ) {
- jlong u = build_long_from( c1, c2, c3, c4, c5, c6, c7, c8 );
- return *(jdouble*)&u;
-}
-
-inline jdouble build_double_from( u1* p ) {
- jlong u = build_long_from( p );
- return *(jdouble*)&u;
-}
-
-
-// Portable routines to go the other way:
-
-inline void explode_short_to( u2 x, u1& c1, u1& c2 ) {
- c1 = u1(x >> 8);
- c2 = u1(x);
-}
-
-inline void explode_short_to( u2 x, u1* p ) {
- explode_short_to( x, p[0], p[1]);
-}
-
-inline void explode_int_to( u4 x, u1& c1, u1& c2, u1& c3, u1& c4 ) {
- c1 = u1(x >> 24);
- c2 = u1(x >> 16);
- c3 = u1(x >> 8);
- c4 = u1(x);
-}
-
-inline void explode_int_to( u4 x, u1* p ) {
- explode_int_to( x, p[0], p[1], p[2], p[3]);
+ return u2((( u2(p[0]) << 8 ) & 0xff00)
+ | (( u2(p[1]) << 0 ) & 0x00ff));
}
--- a/src/hotspot/share/utilities/globalDefinitions_gcc.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/utilities/globalDefinitions_gcc.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -227,17 +227,6 @@
inline int wcslen(const jchar* x) { return wcslen((const wchar_t*)x); }
-// Portability macros
-#define PRAGMA_INTERFACE #pragma interface
-#define PRAGMA_IMPLEMENTATION #pragma implementation
-
-#if (__GNUC__ == 2) && (__GNUC_MINOR__ < 95)
-#define TEMPLATE_TABLE_BUG
-#endif
-#if (__GNUC__ == 2) && (__GNUC_MINOR__ >= 96)
-#define CONST_SDM_BUG
-#endif
-
// Formatting.
#ifdef _LP64
# ifdef __APPLE__
--- a/src/hotspot/share/utilities/globalDefinitions_solstudio.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/utilities/globalDefinitions_solstudio.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -236,11 +236,6 @@
inline int wcslen(const jchar* x) { return wcslen((const wchar_t*)x); }
-// Portability macros
-#define PRAGMA_INTERFACE
-#define PRAGMA_IMPLEMENTATION
-#define PRAGMA_IMPLEMENTATION_(arg)
-
// Formatting.
#ifdef _LP64
#define FORMAT64_MODIFIER "l"
--- a/src/hotspot/share/utilities/globalDefinitions_visCPP.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/utilities/globalDefinitions_visCPP.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -148,11 +148,6 @@
#pragma warning( disable : 4996 ) // unsafe string functions. Same as define _CRT_SECURE_NO_WARNINGS/_CRT_SECURE_NO_DEPRICATE
#endif
-// Portability macros
-#define PRAGMA_INTERFACE
-#define PRAGMA_IMPLEMENTATION
-#define PRAGMA_IMPLEMENTATION_(arg)
-
// Formatting.
#define FORMAT64_MODIFIER "I64"
--- a/src/hotspot/share/utilities/globalDefinitions_xlc.hpp Thu Jan 03 13:22:02 2019 -0500
+++ b/src/hotspot/share/utilities/globalDefinitions_xlc.hpp Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2019, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -126,10 +126,6 @@
inline int wcslen(const jchar* x) { return wcslen((const wchar_t*)x); }
-// Portability macros
-#define PRAGMA_INTERFACE #pragma interface
-#define PRAGMA_IMPLEMENTATION #pragma implementation
-
// Formatting.
#ifdef _LP64
#define FORMAT64_MODIFIER "l"
--- a/src/java.base/share/classes/java/io/ObjectStreamClass.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/java/io/ObjectStreamClass.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1996, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -2275,7 +2275,7 @@
*/
private static class FieldReflectorKey extends WeakReference<Class<?>> {
- private final String sigs;
+ private final String[] sigs;
private final int hash;
private final boolean nullClass;
@@ -2284,13 +2284,13 @@
{
super(cl, queue);
nullClass = (cl == null);
- StringBuilder sbuf = new StringBuilder();
- for (int i = 0; i < fields.length; i++) {
+ sigs = new String[2 * fields.length];
+ for (int i = 0, j = 0; i < fields.length; i++) {
ObjectStreamField f = fields[i];
- sbuf.append(f.getName()).append(f.getSignature());
+ sigs[j++] = f.getName();
+ sigs[j++] = f.getSignature();
}
- sigs = sbuf.toString();
- hash = System.identityHashCode(cl) + sigs.hashCode();
+ hash = System.identityHashCode(cl) + Arrays.hashCode(sigs);
}
public int hashCode() {
@@ -2308,7 +2308,7 @@
return (nullClass ? other.nullClass
: ((referent = get()) != null) &&
(referent == other.get())) &&
- sigs.equals(other.sigs);
+ Arrays.equals(sigs, other.sigs);
} else {
return false;
}
--- a/src/java.base/share/classes/java/net/DatagramPacket.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/java/net/DatagramPacket.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -102,7 +102,7 @@
/**
* Constructs a datagram packet for sending packets of length
- * {@code length} with offset {@code ioffset}to the
+ * {@code length} with offset {@code offset} to the
* specified port number on the specified host. The
* {@code length} argument must be less than or equal to
* {@code buf.length}.
@@ -125,7 +125,7 @@
/**
* Constructs a datagram packet for sending packets of length
- * {@code length} with offset {@code ioffset}to the
+ * {@code length} with offset {@code offset} to the
* specified port number on the specified host. The
* {@code length} argument must be less than or equal to
* {@code buf.length}.
--- a/src/java.base/share/classes/java/net/InetAddress.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/java/net/InetAddress.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -531,7 +531,7 @@
* @param timeout the time, in milliseconds, before the call aborts
* @throws IllegalArgumentException if either {@code timeout}
* or {@code ttl} are negative.
- * @return a {@code boolean}indicating if the address is reachable.
+ * @return a {@code boolean} indicating if the address is reachable.
* @throws IOException if a network error occurs
* @since 1.5
*/
--- a/src/java.base/share/classes/java/net/Socket.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/java/net/Socket.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1102,7 +1102,7 @@
* Tests if {@link SocketOptions#SO_OOBINLINE SO_OOBINLINE} is enabled.
*
* @return a {@code boolean} indicating whether or not
- * {@link SocketOptions#SO_OOBINLINE SO_OOBINLINE}is enabled.
+ * {@link SocketOptions#SO_OOBINLINE SO_OOBINLINE} is enabled.
*
* @exception SocketException if there is an error
* in the underlying protocol, such as a TCP error.
--- a/src/java.base/share/classes/java/net/URLConnection.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/java/net/URLConnection.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -681,7 +681,7 @@
/**
* Returns the value for the {@code n}<sup>th</sup> header field.
* It returns {@code null} if there are fewer than
- * {@code n+1}fields.
+ * {@code n+1} fields.
* <p>
* This method can be used in conjunction with the
* {@link #getHeaderFieldKey(int) getHeaderFieldKey} method to iterate through all
--- a/src/java.base/share/classes/javax/net/ssl/SSLSession.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.base/share/classes/javax/net/ssl/SSLSession.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -187,7 +187,7 @@
* Removes the object bound to the given name in the session's
* application layer data. Does nothing if there is no object
* bound to the given name. If the bound existing object
- * implements the {@code SessionBindingListener} interface,
+ * implements the {@code SSLSessionBindingListener} interface,
* it is notified appropriately.
* <p>
* For security reasons, the same named values may not be
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/JdbcRowSetImpl.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/JdbcRowSetImpl.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1133,7 +1133,7 @@
* as a stream of Unicode characters.
* The value can then be read in chunks from the
* stream. This method is particularly
- * suitable for retrieving large{@code LONGVARCHAR}values. The JDBC driver will
+ * suitable for retrieving large{@code LONGVARCHAR} values. The JDBC driver will
* do any necessary conversion from the database format into Unicode.
* The byte format of the Unicode stream must be Java UTF-8,
* as specified in the Java virtual machine specification.
@@ -6188,7 +6188,7 @@
* @param parameterIndex index of the first parameter is 1, the second is 2, ...
* @param reader An object that contains the data to set the parameter value to.
* @throws SQLException if a database access error occurs, this method is called on
- * a closed {@code PreparedStatement}or if parameterIndex does not correspond to a parameter
+ * a closed {@code PreparedStatement} or if parameterIndex does not correspond to a parameter
* marker in the SQL statement
*
* @throws SQLFeatureNotSupportedException if the JDBC driver does not support this method
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/internal/SyncResolverImpl.java Thu Jan 03 13:22:02 2019 -0500
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/internal/SyncResolverImpl.java Thu Jan 03 13:22:45 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1064,7 +1064,7 @@
/**
* Returns the insert row or the current row of this
- * {@code CachedRowSetImpl}object.
+ * {@code CachedRowSetImpl} object.
*
* @return the {@code Row} object on which this {@code CachedRowSetImpl}
* objects's cursor is positioned
@@ -4326,7 +4326,7 @@
*
* @param columnName a {@code String} object that must match the
* SQL name of a column in this rowset, ignoring case
- * @param c the new column {@code Clob}value
+ * @param c the new column {@code Clob} value
* @throws SQLException if (1) the given column name does not match the
* name of a column in this rowset, (2) the cursor is not on
* one of this rowset's rows or its insert row, or (3) this
--- a/test/lib/jdk/test/lib/artifacts/ArtifactResolver.java Thu Jan 03 13:22:02 2019 -0500
+++ b/test/lib/jdk/test/lib/artifacts/ArtifactResolver.java Thu Jan 03 13:22:45 2019 -0500
@@ -29,16 +29,18 @@
public class ArtifactResolver {
public static Map<String, Path> resolve(Class<?> klass) throws ArtifactResolverException {
- ArtifactManager manager = new DefaultArtifactManager();
+ ArtifactManager manager;
try {
String managerName = System.getProperty("jdk.test.lib.artifacts.artifactmanager");
if (managerName != null) {
manager = (ArtifactManager) Class.forName(managerName).newInstance();
} else if (System.getenv().containsKey(JibArtifactManager.JIB_HOME_ENV_NAME)) {
manager = JibArtifactManager.newInstance();
+ } else {
+ manager = new DefaultArtifactManager();
}
} catch (Exception e) {
- // If we end up here, we'll use the DefaultArtifactManager
+ throw new ArtifactResolverException("Failed to load ArtifactManager", e);
}
ArtifactContainer artifactContainer = klass.getAnnotation(ArtifactContainer.class);