From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.6 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 883681F424 for ; Wed, 9 May 2018 12:50:28 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 36B6A120A20; Wed, 9 May 2018 21:50:25 +0900 (JST) Received: from o1678948x4.outbound-mail.sendgrid.net (o1678948x4.outbound-mail.sendgrid.net [167.89.48.4]) by neon.ruby-lang.org (Postfix) with ESMTPS id 7A90F120A15 for ; Wed, 9 May 2018 21:50:21 +0900 (JST) Received: by filter0025p3las1.sendgrid.net with SMTP id filter0025p3las1-29972-5AF2EE82-F 2018-05-09 12:50:10.282545728 +0000 UTC Received: from herokuapp.com (ec2-23-20-131-130.compute-1.amazonaws.com [23.20.131.130]) by ismtpd0007p1iad1.sendgrid.net (SG) with ESMTP id pGFtdxPERqKAjH3j4J5Yqw for ; Wed, 09 May 2018 12:50:09.816 +0000 (UTC) Date: Wed, 09 May 2018 12:50:10 +0000 (UTC) From: janko.marohnic@gmail.com To: ruby-core@ruby-lang.org Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 62311 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 14745 X-Redmine-Issue-Author: janko X-Redmine-Sender: janko X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: ync6xU2WACa70kv/Ymy4QrNMhiuLXJG8OTL2vJD1yS7n60qUJ2bRoRIeqifhdQiQODLyTaq89JdPBb mneUD+k6HPGav3pJVWcHx3Ou0y29MrM/TMkBwYTL9H3XsPHF3oDIEybbBrm1eC2O3czlIZns/92nCl rcWMWUbt+PxPI/doGb9hKLcLQHapKG889tuuFROPuElXg5ckKbe9XwtxrA== X-ML-Name: ruby-core X-Mail-Count: 86954 Subject: [ruby-core:86954] [Ruby trunk Bug#14745] High memory usage when using String#replace with IO.copy_stream X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE0NzQ1IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGphbmtvIChKYW5rbyBNYXJvaG5pxIcp LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCdWcgIzE0NzQ1OiBI aWdoIG1lbW9yeSB1c2FnZSB3aGVuIHVzaW5nIFN0cmluZyNyZXBsYWNlIHdpdGggSU8uY29weV9z dHJlYW0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE0NzQ1CgoqIEF1dGhvcjog amFua28gKEphbmtvIE1hcm9obmnEhykKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFs CiogQXNzaWduZWU6IAoqIFRhcmdldCB2ZXJzaW9uOiAKKiBydWJ5IC12OiBydWJ5IDIuNS4xcDU3 ICgyMDE4LTAzLTI5IHJldmlzaW9uIDYzMDI5KSBbeDg2XzY0LWRhcndpbjE3XQoqIEJhY2twb3J0 OiAyLjM6IFVOS05PV04sIDIuNDogVU5LTk9XTiwgMi41OiBVTktOT1dOCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KSSdtIHVzaW5nIGN1c3RvbSBJTy1saWtlIG9iamVj dHMgdGhhdCBpbXBsZW1lbnQgI3JlYWQgYXMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIElPLmNvcHlf c3RyZWFtLCBhbmQgSSBub3RpY2VkIG9kZCBtZW1vcnkgYmVoYXZpb3VyIHdoZW4gdXNpbmcgU3Ry aW5nI3JlcGxhY2Ugb24gdGhlIG91dHB1dCBidWZmZXIgdmVyc3VzIFN0cmluZyNjbGVhci4gSGVy ZSBpcyBhbiBleGFtcGxlIG9mIGEgImZha2UgSU8iIG9iamVjdCB3aGVyZSAjcmVhZCB1c2VzIFN0 cmluZyNjbGVhciBvbiB0aGUgb3V0cHV0IGJ1ZmZlcjoKCn5+fiBydWJ5CkdDLmRpc2FibGUKCnJl cXVpcmUgInN0cmluZ2lvIgoKY2xhc3MgRmFrZUlPCiAgZGVmIGluaXRpYWxpemUoY29udGVudCkK ICAgIEBpbyA9IFN0cmluZ0lPLm5ldyhjb250ZW50KQogIGVuZAoKICBkZWYgcmVhZChsZW5ndGgs IG91dGJ1ZikKICAgIGNodW5rID0gQGlvLnJlYWQobGVuZ3RoKQoKICAgIGlmIGNodW5rCiAgICAg IG91dGJ1Zi5jbGVhcgogICAgICBvdXRidWYgPDwgY2h1bmsKICAgICAgY2h1bmsuY2xlYXIKICAg IGVsc2UKICAgICAgb3V0YnVmLmNsZWFyCiAgICBlbmQKCiAgICBvdXRidWYgdW5sZXNzIG91dGJ1 Zi5lbXB0eT8KICBlbmQKZW5kCgppbyA9IEZha2VJTy5uZXcoImEiICogNTAqMTAyNCoxMDI0KSAj IDUwTUIKCklPLmNvcHlfc3RyZWFtKGlvLCBGaWxlOjpOVUxMKQoKc3lzdGVtICJ0b3AgLXBpZCAj e1Byb2Nlc3MucGlkfSIKfn5+CgpUaGlzIHByb2dyYW0gb3V0cHV0cyBtZW1vcnkgdXNhZ2Ugb2Yg NTBNQiBhdCB0aGUgZW5kLCBhcyBleHBlY3RlZCDigJMgNTBNQiB3YXMgbG9hZGVkIGludG8gbWVt b3J5IGF0IHRoZSBiZWdpbm5pbmcgYW5kIGFueSBuZXcgc3RyaW5ncyBhcmUgZGVhbGxvY2F0ZWQu IEhvd2V2ZXIsIGlmIEkgbW9kaWZ5IHRoZSAjcmVhZCBpbXBsZW1lbnRhdGlvbiB0byB1c2UgU3Ry aW5nI3JlcGxhY2UgaW5zdGVhZCBvZiBTdHJpbmcjY2xlYXI6Cgp+fn4gcnVieQogIGRlZiByZWFk KGxlbmd0aCwgb3V0YnVmKQogICAgY2h1bmsgPSBAaW8ucmVhZChsZW5ndGgpCgogICAgaWYgY2h1 bmsKICAgICAgb3V0YnVmLnJlcGxhY2UgY2h1bmsKICAgICAgY2h1bmsuY2xlYXIKICAgIGVsc2UK ICAgICAgb3V0YnVmLmNsZWFyCiAgICBlbmQKCiAgICBvdXRidWYgdW5sZXNzIG91dGJ1Zi5lbXB0 eT8KICBlbmQKfn5+Cgp0aGUgbWVtb3J5IHVzYWdlIGhhcyBub3cgZG91YmxlZCB0byAxMDBNQiBh dCB0aGUgZW5kIG9mIHRoZSBwcm9ncmFtLCBpbmRpY2F0aW5nIHRoYXQgc29tZSBzdHJpbmcgYnl0 ZXMgd2VyZW4ndCBzdWNjZXNzZnVsbHkgZGVhbGxvY2F0ZWQuIFNvLCBpdCBzZWVtcyB0aGF0IFN0 cmluZyNyZXBsYWNlIGhhcyBkaWZmZXJlbnQgYmVoYXZpb3VyIGNvbXBhcmVkIHRvIFN0cmluZyNj bGVhciArIFN0cmluZyM8PC4KCkkgd2FzICpvbmx5KiBhYmxlIHRvIHJlcHJvZHVjZSB0aGlzIHdp dGggYElPLmNvcHlfc3RyZWFtYCwgdGhlIGZvbGxvd2luZyBwcm9ncmFtIHNob3dzIDUwTUIgbWVt b3J5IHVzYWdlLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIFN0cmluZyNjbGVhciBvciBTdHJp bmcjcmVwbGFjZSBhcHByb2FjaCBpcyB1c2VkOgoKfn5+IHJ1YnkKR0MuZGlzYWJsZQoKYnVmZmVy ID0gImEiICogNTAqMTAyNCoxMDI0CmNodW5rICA9ICJiIiAqIDUwKjEwMjQqMTAyNAoKaWYgQVJH VlswXSA9PSAiY2xlYXIiCiAgYnVmZmVyLmNsZWFyCiAgYnVmZmVyIDw8IGNodW5rCmVsc2UKICBi dWZmZXIucmVwbGFjZSBjaHVuawplbmQKCmNodW5rLmNsZWFyCgpzeXN0ZW0gInRvcCAtcGlkICN7 UHJvY2Vzcy5waWR9Igp+fn4KCldpdGggdGhpcyBwcm9ncmFtIEkgYWxzbyBub3RpY2VkIG9uZSBp bnRlcmVzdGluZyB0aGluZy4gSWYgSSByZW1vdmUgYGNodW5rLmNsZWFyYCwgdGhlbiB0aGUgImNs ZWFyIiB2ZXJzaW9uIHVzZXMgMTAwTUIgYXMgZXhwZWN0ZWQgKGJlY2F1c2UgYm90aCBidWZmZXIg YW5kIGNodW5rIHN0cmluZ3MgYXJlIDUwTUIgbGFyZ2UpLCBidXQgdGhlICJyZXBsYWNlIiB2ZXJz aW9uIHVzZXMgb25seSA1ME1CLCB3aGljaCBtYWtlcyBpdCBhcHBlYXIgdGhhdCB0aGUgYGJ1ZmZl cmAgc3RyaW5nIGRvZXNuJ3QgdXNlIGFueSBtZW1vcnkgd2hlbiBpbiBmYWN0IGl0IHNob3VsZCB1 c2UgNTBNQiBqdXN0IGxpa2UgdGhlIGBjaHVua2Agc3RyaW5nLiBJIGZvdW5kIHRoYXQgb2RkLCBh bmQgSSB0aGluayBpdCBtaWdodCBiZSBhIGNsdWUgdG8gdGhlIG1lbW9yeSBidWcgd2l0aCBTdHJp bmcjcmVwbGFjZSBJIGV4cGVyaWVuY2VkIHdoZW4gdXNpbmcgYElPLmNvcHlfc3RyZWFtYC4KCgoK LS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwo=