Etherpad-lite: рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдЧреНрд░реЗрд╕рдлреБрд▓ рддрд░реАрдХреЗ рд╕реЗ рд╣реИрдВрдбрд▓ рдХрд░реЗрдВ рдЕрдиреБрдкрд▓рдмреНрдз

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рдирд╡ре░ 2020  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ether/etherpad-lite

рдмрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ
рдЬрдм рдмреИрдХрдПрдВрдб рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдЕрдиреБрдкрд▓рдмреНрдз рд╣реЛрддрд╛ рд╣реИ (рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рддреЛ рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХреНрд░реИрд╢ рд╣реЛрддрд╛ рд░рд╣рддрд╛ рд╣реИред

рдкреНрд░рдЬрдирди рдХрд░рдирд╛
рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо:

  1. рдЕрдкрдирд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ рдмрдВрдж рдХрд░реЗрдВ (рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ)
  2. рдИрдерд░рдкреИрдб рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ
  3. рдХрд┐рд╕реА рдРрд╕реЗ рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдПрдБ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ (рдХрд┐рд╕реА рднреА рдкреИрдб рдХреЛ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, /admin/plugins рджреЗрдЦрддреЗ рд╕рдордп рднреА рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)
  4. рддреНрд░реБрдЯрд┐ рджреЗрдЦреЗрдВ

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░
рдХреБрдЫ рдлрд╝реНрд░рдВрдЯрдПрдВрдб рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреНрд░реЗрд╕рдлреБрд▓ рдлрд╝реЙрд▓рдмреИрдХ, рд▓реЗрдХрд┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреА рдХрдореА рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЪрд▓рддреЗ рд░рд╣реЗрдВред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░

[2020-11-12 22:13:05.858] [ERROR] console - error: column "value" is of type jsonb but expression is of type text
    at Parser.parseErrorMessage (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/parser.js:278:15)
    at Parser.handlePacket (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/parser.js:126:29)
    at Parser.parse (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/parser.js:39:38)
    at Socket.stream.on (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/index.js:8:42)
    at Socket.emit (events.js:198:13)
    at Socket.EventEmitter.emit (domain.js:448:20)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at Socket.Readable.push (_stream_readable.js:224:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
[2020-11-12 22:13:05.858] [INFO] console - Stopping Etherpad...
[2020-11-12 22:13:05.876] [ERROR] console - TypeError: Cannot read property 'name' of null
    at Client._handleParseComplete (/home/etherpad/etherpad-lite/src/node_modules/pg/lib/client.js:358:26)
    at Connection.emit (events.js:198:13)
    at Connection.EventEmitter.emit (domain.js:448:20)
    at parse (/home/etherpad/etherpad-lite/src/node_modules/pg/lib/connection.js:109:12)
    at Parser.parse (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/parser.js:40:17)
    at Socket.stream.on (/home/etherpad/etherpad-lite/src/node_modules/pg-protocol/dist/index.js:8:42)
    at Socket.emit (events.js:198:13)
    at Socket.EventEmitter.emit (domain.js:448:20)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн

Etherpad version
Version number: 1.8.6
Latest available version: 1.8.6
Git sha: 6a8563e

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдУрд╣ рд╡рд╛рдкрд╕ рдХрд┐рдП рдЧрдП рдХрд╛рдореЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдПрдХ рдЦрд░рд╛рдм рдкреАрдЬреА рдкреНрд░рддрд┐рдмрджреНрдз рдерд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдерд╛ ..

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕реЗ +1 рдХрд░реЗрдВред

рд╣рдорд╛рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдПрдмреНрд╕реНрдЯреНрд░реИрдХреНрд╢рди btw рдХреЗ рд▓рд┐рдП https://github.com/ether/ueberDB ред рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдкреАрдЬреА рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ, рд╕рднреА рдбреАрдмреА рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдПрдХ рдкреАрдЖрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХрд╣рд╛рдВ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбреАрдмреА рдЦреЛ рдЬрд╛рдиреЗ рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ ueberdb рдЙрддреНрд╕рд░реНрдЬрд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдЖрдк рдХрднреА рднреА рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдПрдХ рд╕рдВрджреЗрд╢ рдмрдмрд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐, рдмреИрдХрдПрдВрдб рд▓реЙрдЧ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рддреНрд░реБрдЯрд┐ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рддрдХ рдореЗрдореЛрд░реА рдХреЛ рдХреИрд╢ рдХрд░реЗрдВред рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрдЯрд░ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдордп рд╕реЗ рдмрдбрд╝рд╛ рдХрд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдИрдерд░рдкреИрдб рдХреЛ рддреНрд░реБрдЯрд┐ рдкрд░ рдорд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдЪреАрдЬреЛрдВ рдХреЛ рдЬреАрд╡рд┐рдд рдирд╣реАрдВ рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЕрд╕рдлрд▓ рд╣реЛрддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбрд┐рдЬрд╛рдЗрди рдирд┐рд░реНрдгрдп рдерд╛ рдЬрд┐рд╕рдиреЗ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рднреБрдЧрддрд╛рди рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рд╣рдореЗрдВ рдИрдерд░рдкреИрдб рдХреЛ рд╕реНрдерд┐рд░ (рдЖрдИрдПрд╕рдПрдЪ) рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ред рдИрдерд░рдкреИрдб рдХреА рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдИрдерд░рдкреИрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдбреАрдмреА рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧреА, рдореИрдВ рдЗрд╕рдХрд╛ рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рдпрд╣ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдИрдерд░рдкреИрдб рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдореБрджреНрджрд╛ рд╣реИред column <name> is of type jsonb but expression is of type text рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдмрд╛рдд рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ рдЬреЛ рддрдм рд╣реЛрддреА рд╣реИ рдЬрдм рдорд┐рдбрд▓рд╡реЗрдпрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдХреНрд╡реЗрд░реА рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред рдХреЙрд▓рдо JSONB рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдХреНрд╡реЗрд░реА рдЬрдирд░реЗрдЯрд░ JSON.encode рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдкреНрд░рдХрд╛рд░ рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдЯреЗрдХреНрд╕реНрдЯ рдпрд╛ VARCHAR (рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ "рд╡рд░реНрдг рднрд┐рдиреНрди") рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╛рдзреНрдп рд╣реЛрддрд╛ рд╣реИред
рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдпрд╣ рднреА рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрдм рдЙрдирдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмрдЬрд╛рдп рддрд╛рд░ рдпрд╛ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЙрджрд╛рд╣рд░рдг рдЧреВрдЧрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд┐рд▓рд╛, рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ: https://github.com/jeremydaly/data-api-client/issues/27#issuecomment -584701957

рдУрд╣ рд╡рд╛рдкрд╕ рдХрд┐рдП рдЧрдП рдХрд╛рдореЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдПрдХ рдЦрд░рд╛рдм рдкреАрдЬреА рдкреНрд░рддрд┐рдмрджреНрдз рдерд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдерд╛ ..

рдореИрдВрдиреЗ рдЕрднреА рджреЗрдЦрд╛ - рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕рдореЗрдВ jsonb рдХреЗ рд╕рд╛рде CREATE TABLE рдорд┐рд▓рд╛ рд╣реИ, рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА text ред рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЯреЗрдХреНрд╕реНрдЯ рддрд░реНрдХ рдХреЗ рд╕рд╛рде ueberdb_insert_or_update() рд╣реИ, рдХреЛрдИ рдЕрддрд┐рднрд╛рд░рд┐рдд рд╢реЗрд╖ рдирд╣реАрдВ рд╣реИ ...

рдмрд╕ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдкрд╛рда рд╡рд╣реА рд╣реИ рдЬреЛ рдЗрд╕реЗ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЕрднреА рдХреЗ рд▓рд┐рдП)?

рдкрд╛рда рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдмрд╛рдж рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ:

ALTER TABLE storage ALTER COLUMN value TYPE text USING value::text;
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

kpcyrd picture kpcyrd  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

julpec picture julpec  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

zeer15398376 picture zeer15398376  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

wbt picture wbt  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yurivict picture yurivict  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ