
рдкрд╣рд▓реЗ рд╕рд╛рд▓ рд╕реЗ, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЯреАрдо рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рджреНрд╡рд╛рд░рд╛ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рдЪреЗрдХ рдкрд░ рдмреНрд▓реЙрдЧрд┐рдВрдЧ рдХрд░ рд░рд╣реА рд╣реИред рддрд┐рдерд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, 300 рд╕реЗ рдЕрдзрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рд╣реИ, рдФрд░ 12,000 рд╕реЗ рдЕрдзрд┐рдХ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдорд┐рд▓реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рд╕реА рдФрд░ рд╕реА ++ рдХреЛрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдлрд┐рд░ рд╕реА # рднрд╛рд╖рд╛ рд╕рдорд░реНрдерди рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рдЗрд╕рд▓рд┐рдП, рдкрд░реАрдХреНрд╖рдг рдХреА рдЧрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, рдмрд╣реБрдордд (> 80%) C рдФрд░ C ++ рдкрд░ рдкрдбрд╝рддрд╛ рд╣реИред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЬрд╛рд╡рд╛ рдХреЛ рд╕рдорд░реНрдерд┐рдд рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдПрдХ рдирдИ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рджрд░рд╡рд╛рдЬреЗ рдЦреЛрд▓рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЬрд╛рд╡рд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рд╕реЗ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкреВрд░рдХ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред
рдЬрд╛рд╡рд╛ рджреБрдирд┐рдпрд╛ рдмрд╣реБрдд рдмрдбрд╝реА рдФрд░ рд╡рд┐рд╡рд┐рдз рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдирдП рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп рдореЗрд░реА рдЖрдБрдЦреЗрдВ рдЪреМрдбрд╝реА рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдЪреБрдирд╛рд╡ рдлреБрд▓-рдЯреЗрдХреНрд╕реНрдЯ рд╕рд░реНрдЪ рдЗрдВрдЬрди рдФрд░ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдПрд▓рд┐рдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдкрд░ рдЧрд┐рд░ рдЧрдпрд╛ред рдпрд╣ рдПрдХ рдХрд╛рдлреА рд╕рдлрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ, рдФрд░ рд╕рдлрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджреЛрдЧреБрдирд╛ рдпрд╛ рддрд┐рдЧреБрдирд╛, рдФрд░ рдЕрдзрд┐рдХ рд╕реБрдЦрдж рд▓рдЧрддрд╛ рд╣реИред рддреЛ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдиреЗ рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реЗ рджреЛрд╖реЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛? рд╕рддреНрдпрд╛рдкрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдкрд░ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред
рдПрд▓реАрдЯрд╕рд░реНрдЪ рдХреЗ рд╕рд╛рде рд╕рддрд╣реА рдкрд░рд┐рдЪрд┐рдд
рдПрд▓рд┐рдпрдЯрд╕рд░реНрдЪ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕реНрдХреИрд▓реЗрдмрд▓ рдлреБрд▓-рдЯреЗрдХреНрд╕реНрдЯ рд╕рд░реНрдЪ рдФрд░ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдЗрдВрдЬрди рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЙрдирдХреЗ рдмреАрдЪ рддреНрд╡рд░рд┐рдд рдЦреЛрдЬ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рд▓рдЧрднрдЧ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ) рдХрд░рддрд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддрдВрддреНрд░ / рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдЦреЛрдЬ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЖрд╡реЗрджрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдПрд▓рд╛рдЯрд┐рдХреНрд╕рдЦреЛрдЬ, рд╡рд┐рдХрд┐рдореАрдбрд┐рдпрд╛, рд╕реНрдЯрдореНрдмрд▓рдЕрдк, рдХреНрд╡реЛрд░рд╛, рдлреЛрд░рд╕реНрдХреНрд╡реЗрдпрд░, рд╕рд╛рдЙрдВрдбрдХреНрд▓рд╛рдЙрдб, рдЧрд┐рдЯрд╣рдм, рдиреЗрдЯрдлреНрд▓рд┐рдХреНрд╕, рдЕрдореЗрдЬрди, рдЖрдИрдмреАрдПрдо, рдХреНрдпреВрдмреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдореБрдЦ рд╕рд╛рдЗрдЯреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдЪрд┐рдд рдХреЗ рд╕рд╛рде рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдХреИрд╕рд╛ рдерд╛
рд╕рддреНрдпрд╛рдкрди рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдХреНрд░рдо рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ:
- GitHub рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ;
- рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╢реБрд░реВ рдХрд┐рдпрд╛;
- рдореБрдЭреЗ рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рд╣реБрдИ, рдЗрд╕рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдорд╛рдорд▓реЛрдВ рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рд╛ред
рдЕрдм рдЪрд▓рд┐рдП рдореБрджреНрджреЗ рдкрд░ рдЖрддреЗ рд╣реИрдВред
рдЪреЗрддрд╛рд╡рдиреА! рд╕рдВрднрд╡ NullPointerException
V6008 'рд▓рд╛рдЗрди тАЩрдХрд╛
рдЕрд╢рд╛рдВрддрд┐рдХрд░рдг ред GoogleCloudStorageFixture.java (451)
private static PathTrie<RequestHandler> defaultHandlers(....) { .... handlers.insert("POST /batch/storage/v1", (request) -> { ....
рдЗрд╕ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдореЗрдВ рддреНрд░реБрдЯрд┐ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдмрдлрд░ рд╕реЗ рд▓рд╛рдЗрди рдирд╣реАрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕
рдХрдерди рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ
рд╕реНрдЯрд╛рд░реНрдЯ рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░
NullPointerException рдлреЗрдВрдХ рджреЗрдЧрд╛ред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдпрд╣ рдПрдХ рдЯрд╛рдЗрдкреЛ рд╣реИ, рдФрд░ рд╕реНрдерд┐рддрд┐ рд▓рд┐рдЦрддреЗ рд╕рдордп,
&& рдСрдкрд░реЗрдЯрд░ рдХреЗ рдмрдЬрд╛рдп рдерд╛
|| ред
V6008 '
рдЕрдиреБрд╡рд░реНрддреА IndexexMetadata ' рдХреА рд╕рдВрднрд╛рд╡рд┐рдд
рдЕрд╢рдХреНрддрддрд╛ ред TransportResumeFollowAction.java (171), TransportResumeFollowAction.java (170), TransportResumeFollowAction.java (194)
void start( ResumeFollowAction.Request request, String clusterNameAlias, IndexMetaData leaderIndexMetadata, IndexMetaData followIndexMetadata, ....) throws IOException { MapperService mapperService = followIndexMetadata != null
V6008 рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕реЗ рдПрдХ рдФрд░ рдЪреЗрддрд╛рд╡рдиреАред рдЕрдм, рдПрдХ рдирдЬрд╝рджреАрдХреА рдирдЬрд╝рд░ рдиреЗ
followIndexMetadata рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ riveted рдХрд┐рдпрд╛ рд╣реИред
рдкреНрд░рд╛рд░рдВрдн рд╡рд┐рдзрд┐ рд╣рдорд╛рд░реЗ рд╕рдВрджреЗрд╣ рд╕рд╣рд┐рдд рдХрдИ рдЗрдирдкреБрдЯ рддрд░реНрдХ рд▓реЗрддреА рд╣реИред рдлрд┐рд░,
рдирд▓ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рд╡рд╕реНрддреБ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирддреА рд╣реИ, рдЬреЛ рд╡рд┐рдзрд┐ рдХреЗ рдЖрдЧреЗ рддрд░реНрдХ рдореЗрдВ рднрд╛рдЧ рд▓реЗрддреА рд╣реИред
рдирд▓ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рд╣рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐
followIndexMetadata рдЕрднреА рднреА рдПрдХ рдЕрд╢рдХреНрдд рд╡рд╕реНрддреБ рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рд╕реЗ рдЖ рд╕рдХрддрд╛ рд╣реИред рдареАрдХ рд╣реИ, рдЖрдЧреЗ рджреЗрдЦреЛред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╕рддреНрдпрд╛рдкрди рдкрджреНрдзрддрд┐ рдХреЛ рдХрдИ рддрд░реНрдХреЛрдВ (рдлрд┐рд░ рд╕реЗ, рдЬрд┐рд╕рдХреЗ рдмреАрдЪ рдореЗрдВ рд╕рд╡рд╛рд▓ рд╣реИ) рдХреЗ рд╕рд╛рде рдзрдХреНрдХрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рд╕рддреНрдпрд╛рдкрди рд╡рд┐рдзрд┐ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдЬрдЧрд╣ рдореЗрдВ рдЖрддрд╛ рд╣реИред рд╣рдорд╛рд░реА рд╕рдВрднрд╛рд╡рд┐рдд рдЕрд╢рдХреНрдд рд╡рд╕реНрддреБ рдХреЛ рддреАрд╕рд░реЗ рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛
рдорд╛рдиреНрдп рд╡рд┐рдзрд┐ рд╕реЗ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдпрд╣ рдмрд┐рдирд╛ рд╢рд░реНрдд рдХреЗ рдЕрд╕реНрд╡реАрдХреГрдд рд╣реИред рдирддреАрдЬрддрди, рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд
NullPointerExceptionред static void validate( final ResumeFollowAction.Request request, final IndexMetaData leaderIndex, final IndexMetaData followIndex,
рдпрд╣ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИ рдХрд┐
рдкреНрд░рд╛рд░рдВрдн рд╡рд┐рдзрд┐ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рддрд░реНрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╡рд┐рдзрд┐ рдХреЙрд▓ рд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рддрд░реНрдХреЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рд╣рдо рдЕрд╢рдХреНрдд рд╡рд╕реНрддреБ рдХреЗ рдХрд┐рд╕реА рднреА рдбреЗрд░реЗрдлреЗрд░рд┐рдВрдЧ рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди, рдЖрдкрдХреЛ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЕрднреА рднреА рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИ рдФрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИред
N60 рдХреЗ рд╡рд┐рд░реБрджреНрдз рд╕рддреНрдпрд╛рдкрд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
V6060 'рдиреЛрдб' рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред RestTasksAction.java (152), RestTasksAction.java (151)
private void buildRow(Table table, boolean fullId, boolean detailed, DiscoveryNodes discoveryNodes, TaskInfo taskInfo) { .... DiscoveryNode node = discoveryNodes.get(nodeId); ....
рдПрдХ рдФрд░ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдирд┐рдпрдо рдиреЗ рдпрд╣рд╛рдВ рдХрд╛рдо рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдПрдХ рд╣реА рд╣реИ:
NullPointerException ред рдирд┐рдпрдо рдХрд╣рддрд╛ рд╣реИ: тАЬрджреЛрд╕реНрддреЛрдВ, рддреБрдо рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реЛ? рдРрд╕рд╛ рдХреИрд╕реЗ? рдЕрд░реЗ рдореБрд╕реАрдмрдд! рдЖрдк рдкрд╣рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдХреЛрдб рдХреА рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЗрд╕реЗ
рд╢реВрдиреНрдп рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪреЗрдВ! " рддреЛ рдпрд╣ рдпрд╣рд╛рдБ рдПрдХ рдЕрд╢рдХреНрдд рд╡рд╕реНрддреБ dereferencing рдирд┐рдХрд▓рддрд╛ рд╣реИред рдХрд╛рд╢, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рдЯрд┐рдкреНрдкрдгреА рдиреЗ рднреА рдорджрдж рдирд╣реАрдВ рдХреАред
N60 рдХреЗ рд╡рд┐рд░реБрджреНрдз рд╕рддреНрдпрд╛рдкрд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
V6060 'рдХрд╛рд░рдг' рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред StartupException.java (76), StartupException.java (73)
private void printStackTrace(Consumer<String> consumer) { Throwable originalCause = getCause(); Throwable cause = originalCause; if (cause instanceof CreationException) { cause = getFirstGuiceCause((CreationException)cause); } String message = cause.toString();
рдпрд╣рд╛рдВ рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐
рдереНрд░реЛрдмреЗрдмрд▓ рдХреНрд▓рд╛рд╕ рдХрд╛
рдЧреЗрдЯрдХреЙрдЬ рд╡рд┐рдзрд┐
рд╢реВрдиреНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдКрдкрд░ рджреА рдЧрдИ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдХреБрдЫ рд╕рдордЭрд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред
рдЕрд░реНрдерд╣реАрди рд╕реНрдерд┐рддрд┐рдпрд╛рдВ
V6007 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 's.charAt (i)! =' \ T '' рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рд╣реЛрддрд╛ рд╣реИред рдХреНрд░реЛрди.рдЬрд╛рд╡рд╛ (1223)
private static int findNextWhiteSpace(int i, String s) { for (; i < s.length() && (s.charAt(i) != ' ' || s.charAt(i) != '\t'); i++) {
рдорд╛рдирд╛ рдЧрдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдЗрдВрдбреЗрдХреНрд╕
i рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░ рдкрд╣рд▓реЗ рд╕реНрдкреЗрд╕ рдХрд╛ рдЗрдВрдбреЗрдХреНрд╕ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ? рд╣рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХрд┐
s.charAt (i)! = '\ T' рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реЛрдЧреА
(s.charAt (i)! = '' '|| s.charAt (i) !! = '\ t') ред рдХреНрдпрд╛ рдРрд╕рд╛ рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рдХрд┐рд╕реА рднреА рдкрд╛рддреНрд░ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдирддреАрдЬрддрди, рдпрд╣ рд╡рд┐рдзрд┐ рд╣рдореЗрд╢рд╛
s.length () рдХреЗ рдмрд░рд╛рдмрд░ рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ
рд▓реМрдЯрд╛рдПрдЧреА , рдЬреЛ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рдореИрдВ рдпрд╣ рдорд╛рдирдиреЗ рдХреА рд╣рд┐рдореНрдордд рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдереЛрдбрд╝реА рдКрдВрдЪреА рд╕реНрдерд┐рдд рджреЛрд╖ рд╣реИ:
private static int skipWhiteSpace(int i, String s) { for (; i < s.length() && (s.charAt(i) == ' ' || s.charAt(i) == '\t'); i++) {
рд╣рдордиреЗ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдлрд┐рд░ рдЗрд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдФрд░ рд╣рдорд╛рд░реА рдЧрд▓рдд рдЦреЛрдЬ рдХреЛ
рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЫреЛрдЯреЗ рд╕реБрдзрд╛рд░ рдХрд┐рдПред рд╡рд┐рдзрд┐ рд╕рдорд╛рдпреЛрдЬрд┐рдд, рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХреА рдЧрдИ, рд▓реЗрдХрд┐рди рд╕рдорд╛рдпреЛрдЬрд┐рдд рдирд╣реАрдВ рд╣реБрдИред рд╕реНрдерд┐рддрд┐ рдХреЛ
рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп
&& рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛
|| ред
V6007 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 'рд╢реЗрд╖ == 0' рд╣рдореЗрд╢рд╛ рдЭреВрдареА рд╣реЛрддреА рд╣реИред рдкреЗрдореБрд▓реЗрдЯреНрд╕.рдЬрд╛рд╡рд╛ (439)
private static byte[] generateOpenSslKey(char[] password, byte[] salt, int keyLength) { .... int copied = 0; int remaining; while (copied < keyLength) { remaining = keyLength - copied; .... copied += bytesToCopy; if (remaining == 0) {
рдХреЙрдкреА рдХрд┐рдП рдЧрдП рдЪрдХреНрд░ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ
<keyLength, рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐
рдирдХрд▓ рд╣рдореЗрд╢рд╛
keyLength рд╕реЗ рдХрдо
рд╣реЛрдЧреА ред рдЗрд╕рд▓рд┐рдП, 0 рдХреЗ рд╕рд╛рде
рд╢реЗрд╖ рдЪрд░ рдХреА рд╕рдорд╛рдирддрд╛ рдкрд░ рдПрдХ рддреБрд▓рдирд╛ рд╡реНрдпрд░реНрде рд╣реИ рдФрд░ рд╣рдореЗрд╢рд╛ рдПрдХ рдЧрд▓рдд рдкрд░рд┐рдгрд╛рдо рджреЗрдЧрд╛, рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рд╛рд▓рдд рд▓реВрдк рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдирд┐рдХрд▓реЗрдЧреАред рдХреНрдпрд╛ рдпрд╣ рдХреЛрдб рд╣рдЯрд╛рдиреЗ рдпреЛрдЧреНрдп рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рдЖрдкрдХреЛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рддрд░реНрдХ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореИрдВ рд╕рднреА рдХреЛ рдбреЙрдЯ рдХрд░ рдкрд╛рдПрдВрдЧреЗред
V6007 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 'HealthCheckDn.indexOf (' = ')> 0' рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реИред ActiveDirectorySessionFactory.java (73)
ActiveDirectorySessionFactory(RealmConfig config, SSLService sslService, ThreadPool threadPool) throws LDAPException { super(...., () -> { if (....) { final String healthCheckDn = ....; if (healthCheckDn.isEmpty() && healthCheckDn.indexOf('=') > 0) { return healthCheckDn; } } return ....; }, ....); .... }
рдлрд┐рд░ рд╕реЗ рдПрдХ рд╡реНрдпрд░реНрде рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ред рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЪрд░
healthCheckDn рдХреЛ рд▓реМрдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реИрдореНрдмреНрдбрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреНрд░рд┐рдВрдЧ
HealthCheckDn рдХреЛ рдЦрд╛рд▓реА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ '=' рд╡рд░реНрдг рд╡рд╛рд▓рд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд╣рд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдлреВрд╣, рдЫрдБрдЯрдиреА рдХреА рддрд░рд╣ред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрд╛, рдпрд╣ рдЕрд╕рдВрднрд╡ рд╣реИред рд╣рдо рдХреЛрдб рдХреЗ рддрд░реНрдХ рдХреЛ рдирд╣реАрдВ рд╕рдордЭреЗрдВрдЧреЗ, рдЗрд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкрд░ рдЫреЛрдбрд╝ рджреЗрдВред
рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдХреБрдЫ рдЧрд▓рдд рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрд╣реБрдд рд╕рд╛рд░реЗ рдорд╛рдорд▓реЗ рдереЗ рдЬрд╣рд╛рдВ
V6007 рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдХреЛ
рдЯреНрд░рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ , рдЬрд┐рд╕реЗ рдЕрд▓рдЧ рд╕реЗ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╡рд┐рдзрд┐ рдЫреЛрдЯреА рд╣реИ, рд▓реЗрдХрд┐рди udalenky
private static byte char64(char x) { if ((int)x < 0 || (int)x > index_64.length) return -1; return index_64[(int)x]; }
рддреЛ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдХреА рдПрдХ рдЫреЛрдЯреА рд╡рд┐рдзрд┐ рд╣реИред рд▓реЗрдХрд┐рди рдХреАрдбрд╝реЗ рд╕реЛрддреЗ рдирд╣реАрдВ рд╣реИрдВ! рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рджрд┐рдП:
- V6007 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ '(int) x <0' рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реИред BCrypt.java (429)
- V6025 рд╕рдВрднрд╡рддрдГ рд╕реВрдЪрдХрд╛рдВрдХ '(int) x' рд╕реАрдорд╛ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред BCrypt.java (431)
рд╕рдорд╕реНрдпрд╛ N резред рдПрдХреНрд╕рдкреНрд░реЗрд╢рди
(int) x <0 рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИ (рд╣рд╛рдБ, рд╣рд╛рдБ, рдлрд┐рд░ рд╕реЗ
V6007 )ред рдЪрд░
x рдирдХрд╛рд░рд╛рддреНрдордХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рдХрд╛рд░
рдЪрд╛рд░ рдХрд╛ рд╣реИ ред
рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░ рдПрдХ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рд╣реИред рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЧрд▓рддреА рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди, рдлрд┐рд░ рднреА, рдЪреЗрдХ рдмреЗрдорд╛рдиреА рд╣реИ рдФрд░ рдЗрд╕реЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕рдорд╕реНрдпрд╛ N2ред
ArrayIndexOutOfBoundsException рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рдгреА рд╕рд░рдгреА рдХрд╛ рд╕рдВрднрд╛рд╡рд┐рдд рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ред рдлрд┐рд░ рд╕рд╡рд╛рд▓ рднреАрдЦ рдорд╛рдБрдЧрддрд╛ рд╣реИ, рдЬреЛ рд╕рддрд╣ рдкрд░ рд╣реИ: "рд░реБрдХреЛ, рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рдЬрд╛рдБрдЪ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?"
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 128 рддрддреНрд╡реЛрдВ рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХрд╛ рд╕рд░рдгреА рд╣реИ:
private static final byte index_64[] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, -1, -1, -1, -1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -1, -1, -1, -1, -1 };
рдЬрдм рдЪрд░
x char64 рд╡рд┐рдзрд┐ рдХреЗ рдЗрдирдкреБрдЯ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рд╡реИрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред рдЕрдВрддрд░ рдХрд╣рд╛рдВ рд╣реИ? рд╕рд░рдгреА рд╕реЗ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рдЕрднреА рднреА рдХреНрдпреЛрдВ рд╕рдВрднрд╡ рд╣реИ?
рдЬрд╛рдБрдЪ
(int) x> index_64.length рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред рдпрджрд┐
x рдХрд╛ рдорд╛рди 128 рдХреЗ рд╕рд╛рде
char64 рд╡рд┐рдзрд┐ рдХреЗ рдЗрдирдкреБрдЯ рдкрд░
рдЖрддрд╛ рд╣реИ , рддреЛ рдЪреЗрдХ
ArrayIndexOutOfBoundsException рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реБрд░рдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рд╢рд╛рдпрдж рд╣рдХреАрдХрдд рдореЗрдВ рдРрд╕рд╛ рдХрднреА рдирд╣реАрдВ рд╣реЛрддрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЪреЗрдХ рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдСрдкрд░реЗрдЯрд░ рдХреЛ "рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ" (>) "рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдмрд░рд╛рдмрд░" (> =) рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЬреЛ рддреБрд▓рдирд╛ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА
V6013 рдирдВрдмрд░ 'рдбрд┐рд╕реНрдкреНрд▓реЗрд╕рд╛рдЗрдЬрд╝' рдФрд░ 'that.displaySize' рдХреА рддреБрд▓рдирд╛ рд╕рдВрджрд░реНрдн рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред рд╕рдВрднрд╡рддрдГ рдПрдХ рд╕рдорд╛рдирддрд╛ рддреБрд▓рдирд╛ рдХрд╛ рдЗрд░рд╛рджрд╛ рдерд╛ред ColumnInfo.java (122)
.... private final String table; private final String name; private final String esType; private final Integer displaySize; .... @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } ColumnInfo that = (ColumnInfo) o; return displaySize == that.displaySize &&
рдпрд╣рд╛рдБ рдЧрд▓рдд рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ
рдЗрдВрдЯреАрдЬрд░ рдХреА рддреБрд▓рдирд╛
== рдСрдкрд░реЗрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИ, рдЕрд░реНрдерд╛рдд рдЙрдирдХреА рддреБрд▓рдирд╛ рд╕рдВрджрд░реНрдн рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдХрд┐
ColumnInfo рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рддреБрд▓рдирд╛ рдХреА рдЬрд╛рдПрдЧреА, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП
рдкреНрд░рджрд░реНрд╢рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓рд┐рдВрдХ рд╣реИрдВ рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рд╛рдордЧреНрд░реА рд╣реИред рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рддреБрд▓рдирд╛ рд╣рдореЗрдВ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдо рджреЗрдЧреА, рдЬрдмрдХрд┐ рд╣рдореЗрдВ рд╕рдЪреНрдЪрд╛рдИ рдХреА рдЙрдореНрдореАрдж рдереАред
рдореИрдВ рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрджреНрдпрдо рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рддреБрд▓рдирд╛ рд╡рд┐рдлрд▓ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХрд╛ рдирддреАрдЬрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рд╢реБрд░реВ рдореЗрдВ
рдбрд┐рд╕реНрдкреНрд▓реЗрд╕рд╛рдЗрдЬрд╝ рдлрд╝реАрд▓реНрдб рдЯрд╛рдЗрдк
рдЗрдВрдЯ рдХрд╛ рдерд╛ ред
V6058 'рдмрд░рд╛рдмрд░' рдлрд╝рдВрдХреНрд╢рди рдЕрд╕рдВрдЧрдд рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ: рдЗрдВрдЯреЗрдЧрд░, рдЯрд╛рдЗрдорд╡реИрд▓реНрдпреВред рдбреЗрдЯрд╛рдлреАрдбрдЕрдкрдбреЗрдЯред рдЬрд╛рд╡рд╛ (375)
.... private final TimeValue queryDelay; private final TimeValue frequency; .... private final Integer scrollSize; .... boolean isNoop(DatafeedConfig datafeed) { return (frequency == null || Objects.equals(frequency, datafeed.getFrequency())) && (queryDelay == null || Objects.equals(queryDelay, datafeed.getQueryDelay())) && (scrollSize == null || Objects.equals(scrollSize, datafeed.getQueryDelay()))
рдФрд░ рдлрд┐рд░ рд╕реЗ рд╡рд╕реНрддреБрдУрдВ рдХреА рдЧрд▓рдд рддреБрд▓рдирд╛ред рдЕрдм рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдЬрд┐рдирдХреЗ рдкреНрд░рдХрд╛рд░ рдЕрд╕рдВрдЧрдд (
рдкреВрд░реНрдгрд╛рдВрдХ рдФрд░
рдЯрд╛рдЗрдорд╡реИрд▓реНрдпреВ ) рд╣реИрдВред рдЗрд╕ рддреБрд▓рдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реИред рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрдЧ рдХреЗ рдЦреЗрддреЛрдВ рдХреА рддреБрд▓рдирд╛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЙрд╕реА рддрд░рд╣ рдХреА рдЬрд╛рддреА рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдЦреЗрддреЛрдВ рдХреЗ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рддреЗрдЬ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЙрд╕рдиреЗ рдЦреБрдж рдХреЛ рдЙрд╕реА рдмрдЧ рд╕реЗ рд╕рдореНрдорд╛рдирд┐рдд рдХрд┐рдпрд╛ред рдХреНрд▓рд╛рд╕
рд╕реНрдХреНрд░реЙрд▓рд╕рд╛рдЗрдЬрд╝ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреЗрдЯрд░ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рддреНрд░реБрдЯрд┐ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдЙрдкрдпреБрдХреНрдд рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
рдбреЗрдЯрд╛рдлрд╝реАрдб .getScrollSize () ред
рдЖрдЗрдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рдХреБрдЫ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВред рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдкрд╖реНрдЯ рд╣реИред
V6001 рдмрд╛рдпреАрдВ рдФрд░ '==' рдСрдкрд░реЗрдЯрд░ рдХреЗ рджрд╛рдИрдВ рдУрд░ рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ 'takeInMillis' рд╣реИрдВред рдЯрд░реНрдорд╡реЗрдХреНрдЯрд░реНрд╕рдкреНрд░рд┐рдВрд╕.рдЬрд╛рд╡рд╛ (152)
@Override public boolean equals(Object obj) { .... return index.equals(other.index) && type.equals(other.type) && Objects.equals(id, other.id) && docVersion == other.docVersion && found == other.found && tookInMillis == tookInMillis
V6009 рдлрд╝рдВрдХреНрд╢рди 'рдмрд░рд╛рдмрд░' рдПрдХ рд╡рд┐рд╖рдо рддрд░реНрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ 'shardId.getIndexName ()' рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдкрджреНрдзрддрд┐ рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕реНрдиреИрдкрд╢реЙрдЯрд╢реЗрдпрд░рдлреЗрд▓.рдЬрд╡рд╛ (208)
@Override public boolean equals(Object o) { .... return shardId.id() == that.shardId.id() && shardId.getIndexName().equals(shardId.getIndexName()) &&
рдЕрдиреЗрдХ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕рдВрдЧреНрд░рд╣
V6006 рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред 'рдереНрд░реЛ' рдХреАрд╡рд░реНрдб рдЧрд╛рдпрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИред JdbcConnection.java (88)
@Override public void setAutoCommit(boolean autoCommit) throws SQLException { checkOpen(); if (!autoCommit) { new SQLFeatureNotSupportedException(....); } }
рдмрдЧ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдФрд░ рдХрд┐рд╕реА рднреА рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрд╕реЗ рдЖрдЧреЗ рдирд╣реАрдВ рдлреЗрдВрдХрд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЕрдирд╛рдо рдЕрдкрд╡рд╛рдж рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рднреА рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдПрдХ рдЯреНрд░реЗрд╕ рдХреЗ рдмрд┐рдирд╛ рдирд╖реНрдЯ рд╣реЛ рдЧрдИред рдЗрд╕рдХрд╛ рдХрд╛рд░рдг
рдереНрд░реЛ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреА рдХрдореА рд╣реИред
V6003 'if (A) {....} рдХрд╛ рдЙрдкрдпреЛрдЧ if (A) {....}' рдкреИрдЯрд░реНрди рдХрд╛ рдкрддрд╛ рдЪрд▓рд╛ред рддрд╛рд░реНрдХрд┐рдХ рддреНрд░реБрдЯрд┐ рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред MockScriptEngine.java (94), MockScriptEngine.java (105)
@Override public <T> T compile(....) { .... if (context.instanceClazz.equals(FieldScript.class)) { .... } else if (context.instanceClazz.equals(FieldScript.class)) { .... } else if(context.instanceClazz.equals(TermsSetQueryScript.class)) { .... } else if (context.instanceClazz.equals(NumberSortScript.class)) .... }
рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдХрдИ
рдФрд░ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ, рд╢рд░реНрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рджреЛ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реНрдерд┐рддрд┐ рдХреЛ рдХреЛрдб рдХреА рдПрдХ рд╕рдХреНрд╖рдо рд╕рдореАрдХреНрд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
V6039 рд╕рдорд╛рди рд╕рд╢рд░реНрдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рджреЛ 'рдпрджрд┐' рдХрдерди рд╣реИрдВред рдкрд╣рд▓реЗ 'if' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдореЗрдердб рд░рд┐рдЯрд░реНрди рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рджреВрд╕рд░рд╛ 'рдЕрдЧрд░' рдХрдерди рд╕рдВрд╡реЗрджрдирд╣реАрди рд╣реИред SearchAfterBuilder.java (94), SearchAfterBuilder.java (93)
public SearchAfterBuilder setSortValues(Object[] values) { .... for (int i = 0; i < values.length; i++) { if (values[i] == null) continue; if (values[i] instanceof String) continue; if (values[i] instanceof Text) continue; if (values[i] instanceof Long) continue; if (values[i] instanceof Integer) continue; if (values[i] instanceof Short) continue; if (values[i] instanceof Byte) continue; if (values[i] instanceof Double) continue; if (values[i] instanceof Float) continue; if (values[i] instanceof Boolean) continue;
рдПрдХ рд╣реА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрдВрдХреНрддрд┐ рдореЗрдВ рджреЛ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рджреВрд╕рд░реА рд╕реНрдерд┐рддрд┐ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реИ, рдпрд╛ рдХреНрдпрд╛
рдмреВрд▓рд┐рдпрди рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ?
V6009 рдлрд╝рдВрдХреНрд╢рди 'рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ' рдПрдХ рд╡рд┐рд╖рдо рддрд░реНрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред 'QueryStringIndex + 1' рддрд░реНрдХ 'queryStringLength' рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЙрдЧрд┐рдВрдЧрдСрдбрд┐рдЯрдЯреНрд░рд┐рд▓.рдЬрд╛рд╡рд╛ (660)
LogEntryBuilder withRestUriAndMethod(RestRequest request) { final int queryStringIndex = request.uri().indexOf('?'); int queryStringLength = request.uri().indexOf('#'); if (queryStringLength < 0) { queryStringLength = request.uri().length(); } if (queryStringIndex < 0) { logEntry.with(....); } else { logEntry.with(....); } if (queryStringIndex > -1) { logEntry.with(...., request.uri().substring(queryStringIndex + 1,
рддреБрд░рдВрдд рдПрдХ рддреНрд░реБрдЯрд┐ рдкрд░рд┐рджреГрд╢реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬреЛ
StringIndexOutOfBoundsException рдХреЛ рдлреЗрдВрдХ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдЕрдкрд╡рд╛рдж рддрдм рд╣реЛрдЧрд╛ рдЬрдм
request.uri () рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд░реНрдг '' 'рдкрд╣рд▓реЗ рд╕реЗ'? '' рд╣реЛрддрд╛ рд╣реИред рдРрд╕реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, рд╡рд┐рдзрд┐ рдореЗрдВ рдХреЛрдИ рдЬрд╛рдВрдЪ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ рдЕрднреА рднреА рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЖрдкрджрд╛ рд╕реЗ рдмрдЪрд╛ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ред рд╢рд╛рдпрдж рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рд╣рд░
рдЕрдиреБрд░реЛрдз рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЪреЗрдХ рдХреЗ рдХрд╛рд░рдг рдРрд╕рд╛ рдХрднреА рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдореНрдореАрдж рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдиреЗ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдФрд░ рдореБрдХреНрдд рдУрдкрди-рд╕реЛрд░реНрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдХреЛрдб рдореЗрдВ рдЦрд╛рдорд┐рдпреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорджрдж рдХреА рд╣реИред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдкрд╛рд░реНрд╕ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рдФрд░ рд╣рдорд╛рд░реЗ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдерд╛ред рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЪреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рдФрд░ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ред
рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рд╕реЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдПрдХ рдирдИ рджреБрдирд┐рдпрд╛ рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирдП рдкрд░реАрдХреНрд╖рдгреЛрдВ, рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ, рд╕рдХреНрд░рд┐рдп рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ :)ред рддреЛ, рдореИрдВ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ, рдмрд┐рдирд╛ рджреЗрд░реА рдХрд┐рдП,
рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рдорд╕реМрджреЗ рдкрд░ рд╣рдорд╛рд░реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ!

рдпрджрд┐ рдЖрдк рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдЕрдВрдЧреНрд░реЗрдЬреА рдмреЛрд▓рдиреЗ рд╡рд╛рд▓реЗ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рдореИрдХреНрд╕рд┐рдо рд╕реНрдЯреЗрдлрд╛рдиреЛрд╡ред
рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕рдбрд╝рдХ рдХреЛ рд╣рд┐рдЯ рдХрд░рддрд╛ рд╣реИред рдЕрдЧрд▓рд╛ рдкрдбрд╝рд╛рд╡ рд╣реИ рдПрд▓реАрдЯреЗрд╕рд░реНрдЪ