リリースノート (バージョン 2022.1) Helix コマンドライン (P4) Helix バージョニングエンジン (P4D) Helix プロキシ (P4P) Helix ブローカ (P4Broker) はじめに -------- このドキュメントでは、バージョン 2022.1 における以下のツールの新機能な どについて説明します。 * Helix バージョニングエンジン (P4D) * Helix コマンドラインクライアント (P4) * Helix プロキシ (P4P) * Helix ブローカ (P4Broker) その他の Helix 製品に関するリリースノートは、弊社の Web ページに別途掲 載されています。別途、Perforce APIプログラミング向けのドキュメントも用 意されているので、プログラム開発者は本リリースノートにくわえて、そちら のドキュメントも確認してください。 Perforce のリリースは YYYY.R/CCCCC(例:2002.1/30547) という形式で表され 、YYYY は年、R はその年の中のリリース番号、CCCCCはバグ修正レベルでの変 更を示します。リリースノートでは、各バグ修正に変更番号が記されています 。どのビルドにも、(1)以前の全リリースにおけるバグ修正と (2) 現在のリリ ースにおける、バグ修正変更レベルまでのすべてのバグ修正が含まれます。 'p4'や'p4d'のバージョン情報を調べる場合は、'-V' オプションを指定してこ れらのコマンドを実行します。また、'p4 info'コマンドを実行することで、 サーバ情報を調べることが可能です。バージョン情報には、リリースバージョ ンおよびビルド変更番号が含まれます。ビルド変更番号と、該当のバージョン リリースノートファイルで示されている変更番号およびパッチ情報と比較する ことで、あるバージョンの特定のビルドにその変更が含まれているかどうかを 判断することが可能です。 -------------------------------------------------------------------------- p4d, p4, p4p and p4broker をサポートしているプラットフォーム -------------------------------------- Linux kernel 2.6+ (glibc 2.6+) for Intel(x86, x86_64) Windows 8.1 for Intel(x64) Windows 10 for Intel(x64) Windows 2012 for Intel(x64) Windows 2016 for Intel(x64) Windows 2019 for Intel(x64) Apple OS X 10.12+ for Intel(x86_64) -------------------------------------------------------------------------- 重要: プラットフォームのサポート終了のお知らせ ---------------------------------- このお知らせは、2022年11月にサポート終了(EOL)ステータスになプラ ットフォームを示しています。これらは、サーバリリースのp4、p4d、p4p 、p4ftp、およびp4brokerコンポーネントに適用されます。 次の32bitプラットフォームは、このバージョンのリリースで廃止フェーズに入 りました。 Windows 8.1 for Intel(x86), Windows 10 for Intel(x86) 廃止フェーズ: このバージョンのリリース以降、上記のプラットフォームはサポートされ なくなります。このフェーズでは、お客様は古いリリースの非推奨プラッ トフォームに対するフルサポートとパッチを受け取ることができます。対 象プラットフォームは、2022年11月までこのフェーズに留まり、その後、 廃止フェーズに移行します。 EOLフェーズ: これらのプラットフォーム用のパッチは今後発行されません。 これらのプラットフォーム上のサーバを使用するお客様には、テクニカル サポートを提供しなくなります。 ---------------------------------------------------------------------- 重要: Helix Core2021.2以前のWindowsサーバーの制限事項 ---------------------------------- Helix Core2021.2以前のWindowsサーバでは、Helix Core Extensionsのサポートが 無効になっています。これは、同プラットフォームのパフォーマンスに関する懸念が あり、ツールチェーンの変更 と矛盾するためです。LinuxとMacでは引き続き完全にサポートされます。 この制限は 2021.2 で解決され、現在ではサポートされるすべてのプラットフォーム で拡張機能が完全に サポートされています。 セキュリティに関する重要な注意事項 ---------------------------------- このリリース 2022.1 では、バージョン 1.1.1q の OpenSSL ライブラリ がリンクされています。 ---------------------------------------------------------------------- 輸出に関する重要な注意事項 -------------------------- この製品は、米国輸出管理法、米国輸出管理規則および国際武器取引規則 による規制の対象であり、また、最終使用、最終使用者および輸出先を制 限するすべての適用可能な規則による規制の対象となります。ライセンシ ーは、直接・間接を問わず、米国による禁輸措置が適用されている国に対 する Perforce 技術の提供および、それらの国における Perforce 技術の 使用を禁止されています。また、その他の方法によって米国輸出管理法お よびその規則に違反することも同様に禁止されています。 ---------------------------------------------------------------------- サーバのアップグレード ---------------------- ** アップグレードに関する注意事項 ** アップグレード推奨事項の変更 Helixバージョン管理エンジン(P4D)のv19.1以降では、「p4d -xu」 によって実行される重要なスキーマアップグレードは、必要なサーバ でのみ実行されます。 これは、アップグレードによって行われたメタデータの変更を複製す る必要があるため、ジャーナルに記録する必要があるためです。 間違いを防ぐために、ジャーナリングが無効になっている場合、アッ プグレードは実行されません。オフラインデータベースが使用されて いる場合、ライブデータベースで実行されたアップグレードはジャー ナルされ、通常のジャーナル再生中に適用されるため、オフラインデ ータベースでは、アップグレードは実行しないでください。 マルチサーバ展開のアップグレードに関する推奨事項も改訂されまし た。全てのサーバを単一のアップグレードセッションでアップグレー ドすることをお勧めします。詳細については、[Helix Coreサーバ管 理者ガイド:マルチサイト展開]を参照してください。 Helix Versioning Engine(P4D)の2019.1以降からアップグレードす る場合、レプリカサーバは、複製元のサーバより先に安全にアップグ レードできます。 「アウトサイドイン」と呼ばれるアップグレード パターンにより、マルチサーバ環境全体を一度にオフラインにするこ となく、最も外側のレプリカサーバから一台毎にマルチサーバ環境を アップグレードできます。 2019.1より前のバージョンから2020.1以降にアップグレードする場合 は、すべてのサーバを1回のアップグレードセッションでアップグ レードすることを強くお勧めします。 詳細については、Helix CoreServer管理者ガイドを参照してください 。 *ここにURLをリンクする。 --------------------------------------------------------------------- 本リリースにおけるライセンス未登録サーバに対する変更 ---------------------- バージョン 16.1 以降の Helix バージョニングエンジン (P4D) では 、ライセンス未登録サーバで使用できるフリーユーザ数が 5 名に変 更されました。クライアント数は 20 のままです。過去のサーババー ジョンは、引き続き 20/20 での使用がサポートされます。 ------------------------------------------------------------------- アップグレードの前に -------------------- Helix Versioning Engine(P4D)をアップグレードするには、 Perforceのライセンスファイルが最新である必要があります。期限切 れのライセンスは、アップグレードされたサーバーでは使用できません。 通常のチェックポイントに加えて、アップグレードの前に必ずサーバーをチェ ックポイントしてください。現在レポをポーリングしているHelix4Gitイン スタンスについては、Helixバージョニングエンジンをアップグレードする前 にHelix4Gitインスタンスをアップグレードすることをお勧めします。そう しないと、リポジトリへのポーリングが停止してしまいます。 読み取り専用のアーカイブ・ディレクトリは、アップグレードの妨げになることがあ ります。 これは、CVSのような別のバージョン管理システムから移行したアーカイブパスや、 サードパーティからインポートしたコンテンツがシステム管理者によって読み取り専用に されている場合などに発生する可能性があります。 アップグレードを試みる前に、そのようなアーカイブパスがすべて書き込み可能であ ることを確認してください。 2022.1 サーバをダウングレードすることはできません。 現在使用している Helix サーバのバージョンに応じて、適宜、以下いず れかのアップデート手順に従い作業を行ってください。 'データベーススキーマのアップデート'または'データベースフォーマッ トのアップデート' ------------------------------------------------------------------- ** データベーススキーマのアップデート ------------------------------------- 使用しているサーバのバージョンが 2013.3 以降の場合は、データベース スキーマのアップデートを行います。 Unix プラットフォーム --------------------- 1. 'p4d -r <サーバルート> -J <ジャーナルファイル> -xu' コマンドを 実行します。このコマンドは、重要なスキーマのアップグレードを行い、 処理を終了します。 2. 各環境で通常使用しているパラメータを用いてサーバを再起動します 。 Windows プラットフォーム ------------------------ 1. 'p4d -r <サーバルート> -J <ジャーナルファイル> -xu' コマンドを 実行します。このコマンドは、重要なスキーマのアップグレードを行い 、処理を終了します。 2. Helix バージョニングエンジン (P4D) サービスを再起動します。 注:パーソナル DVCS サーバは、あらゆるデータベーススキーマのアップ グレードを自動的に行います。これらのサーバにおいて、前述で説明のア ップグレード手順の実施は必須ではありませんが、安全に稼働します。 ------------------------------------------------------------------ ** データベースフォーマットのアップデート ----------------------------------------- 使用しているサーバのバージョンが 2013.3 以前の場合は、データベース フォーマットのアップデートを行います。 2013.3 で新しい B ツリーのフォーマットが導入されので、これより前の バージョンではデータベーススキーマのアップデートを行うことができま せん。内部的なアップグレード 'p4d -xu ' (必要な場合) を実行する前 に、古いサーバを使用したチェックポイントの作成および、2020.1 サー バを使用したリストアが必要となります。 注:(マニュアルなどに記載のない) '+T' 修飾子 (tiny.db データベース のファイルコンテンツを格納) を使用する場合、このデータでチェックポ イントを作成することはできません (このため、リストアされません)。 このテーブルに関するバックアップ / リストア処理については 'p4 help undoc' を参照してください。 バージョン 2021.1 でデータベースをリストアした後、データベーススキ ーマをアップデートします。 Unix プラットフォーム --------------------- 1. 'p4d -r <サーバルート> -J <ジャーナルファイル> -xu' コマンドを 実行します。このコマンドは、重要なスキーマのアップグレードを行い、 処理を終了します。 2. 各環境で通常使用しているパラメータを用いてサーバを再起動します 。 Windows プラットフォーム ------------------------ 1. 'p4d -r <サーバルート> -J <ジャーナルファイル> -xu' コマンドを 実行します。このコマンドは、重要なスキーマのアップグレードを行い、 処理を終了します。 2. Helix バージョニングエンジン (P4D) サービスを再起動します。 -------------------------------------------------------------------------- 古いバージョンとの互換性 ------------------------ 1. 特に指示がない限り、Helix バージョニングエンジンのバージョンを 問 わずに、あらゆるバージョンの Helix コマンドライン (P4) を利用す る ことが可能です。ただし、2020.1 の新機能を使うには、クライアント と P4D の両方、またはいずれか一方のアップグレードが必要となります 。 以降の説明文に記述されているアスタリスクは、プログラムごとのアッ プグレードの必要性を表します。 * ----- 新しい p4 クライアントプログラムが必要 (すべてのクライアントアプリケーションおよび派生 API を含む) ** ---- 新しい p4d サーバプログラムが必要 *** --- 新しい p4p プロキシプログラムが必要 **** -- 新しい p4broker ブローカプログラムが必要 レプリカサーバーは、マスターサーバーと少なくとも同じリリースレベルで なければならず、マスターのアップグレードが必要な機能は、レプリカのア ップグレードも必要です。マスターが少なくとも 2019.1 を実行している場 合、レプリカはマスターより後のリリースを実行することができます。ただ し、この場合、マスターがアップグレードされるまで、アップグレードされ たレプリカで一部の新機能が利用できない可能性があります。 2. 99.2 以降のリモートディポの機能では、UNIX と NT との間で互換性 が あります。98.2 以降では、異なるバージョンでの互換性をサポートし ま す (ただし、98.2 以降)。98.1 以前では、両サーバのバージョンが同 じ場合に限りリモートディポを利用することができます。 3. 2005.1 以降、98.2 と 99.1 のリモートディポをサポートしなくなりまし た。98.2 や 99.1 から 2005.1 サーバへ接続することは可能ですが、デ ィポにはファイルが存在しないように見えます。 ---------------------------------------------------------------------- テクノロジープレビュー機能 -------------------------- テクノロジープレビュー機能は現在サポートされておらず、機能が不完全 になる可能性があるため開発環境での使用に適していません。これらの機 能は、今後のリリースでのフルサポートを目標とし、ユーザの関心事やフ ィードバックを得るために提供されています。テクノロジープレビュー機 能の完全なサポートにあたり、フィードバックや機能面での意見を、ぜひ お寄せください。 -------------------------------------------------------------------------- 重要: このリリースに関する、GA (正式リリース) および GA 後の最新情報は、 次の URLをご参照ください。 http://www.perforce.com/perforce/r22.1/user/relnotes.txt -------------------------------------------------------------------------- 2022.1 (2022.1/2285021)主な新機能 ------------------ #2260122 (Job #108091 #108093 #108094 #108092 #109639 #109672 #109738) #109791 ) ** ストリームコンポーネント ストリームコンポーネントは、ストリームのクライアントビューに他のストリームビュー を含めることを可能にします。コンポーネント構文を使用して別のストリームを参照する と、そのストリームは消費側ストリームのコンポーネントになります。 どのストリームも、他のストリームビューで参照されることでコンポーネントになること ができます。ただし、ストリームは、直接的にも間接的にも(参照される他のコンポーネ ントストリームを介して)、自分自身をコンポーネントとして参照することはできません 。 例えば、ストリームAはコンポーネントストリームBを参照し、コンポーネントストリーム Cを参照する、というようにコンポーネントを任意のレベルまでネストすることができま す。 インポートテンプレートパスと同様に、ストリームコンポーネントは、ストリームクライ アントが現在のストリームの外部にあるファイルにアクセスできるようにしますが、テン プレートパスを最新に保つことに関連したメンテナンスの問題は発生しません。 各コンポーネントは、以下のような形式になります。 component_type component_folder component_stream[@[change|label]] 現在利用できるcomponent_typeは'readonly'のみです。readonlyコンポーネントは、コン ポーネントファイルを同期させることはできるが、送信することはできないことを意味し ます。 component_folder フィールドは、各コンポーネントビューファイルのディレクトリプレ フィックスを指定します。 指定されたディレクトリは、ワークスペースのルートディレ クトリの直下になる。 component_stream フィールドは、コンポーネントストリームの名前とパスを指定し、変 更または自動ラベルにピン留めすることができます。 change または @label (自動ラベル) が指定された場合、変更前または以前のバージョン のコンポーネント ストリームが使用され、同期されるファイルはすべて変更前または以 前のリビジョンになります。 例えば、3つのストリーム //streams/A, //streams/B, //streams/C があり、ストリーム A にコンポーネント定義があるとします。 readonly dirB //streams/B というコンポーネント定義があり、ストリームBは readonly dirC //streams/C を持つ場合、ストリームAのクライアントは以下のようなビューを持つことになります。 //streams/A/... //clientname/... //streams/B/... //clientname/dirB/... //streams/C/... //clientname/dirB/dirC/... テンプレートパスと同様に、コンポーネントビューは、子孫ストリームがnoinherit Pare ntViewを持っていない限り、定義ストリームの子孫に継承されます。 子孫ストリームがnoinherit ParentViewを持つように変換された場合、コンポーネント定 義は子孫ストリームにコピーされます。 ストリームコンポーネントは、クライアントビューにのみ影響することに注意してくださ い。 ブランチビューは、ストリームコンポーネントの影響を受けないため、親子間の統 合はコンポーネント定義の影響を受けません。 ストリームコンポーネントに関連する新しい設定項目として、dm.stream.componentsがあ り、これは値0(デフォルト)および1を取ります。 0に設定すると、ストリームクライアントビューは、ストリームコンポーネントの影響を 受けません。 1に設定すると、コンポーネントビューが現在のストリームビューと結合されて、クライ アントビューが作成されます。 この機能の詳細については、 'p4 help stream' または Helix Core Command-Line (P4) Guide の Streams の章の Components のセクションを参照してください。 #2254609 (Job #108122 #108123 ) ** フェイルオーバーをサポートする新しいコマンドが追加されました。 旧マスターサーバーへのフェイルバックをサポートする新しいコマンドが利用可能です。 1) 'p4d -Fm' コマンドは、旧マスターを 'p4 failback' に対応したスタンバイサーバー にするための準備です。 2) 「p4 failback」コマンドは、元のマスターをマスターとしての以前の役割にリストア します。 3) 'p4d -Fs' コマンドは、元のスタンバイサーバーをリストアされたマスターのスタン バイとしての以前の役割にリストアします。 この手順の詳細については、'p4 help failbackintro' を参照してください。 #2246250 (Job #102661 #105847 #105853 #106018) ** . p4 stream -d' でストリームを削除すると、'p4 delete' と同様にそのストリーム仕様が 削除されたものとしてマークされ、ストリーム仕様の履歴が保存されるようになりました 。 削除されたストリームは 'p4 streams' で '-a' フラグが指定された場合のみ報告されま す。p4 streamlog' は、ストリームの削除アクションを表示するようになりました。 ストリームを永久に削除するには、 'p4 stream --obliterate [-y]' を使ってください 。 #2237481 (Job #108302) ** を追加しました。 rt.monitorfile' が設定されている場合、実行中のコマンドに影響するモニタレベルを リアルタイムで調整できるようになりました。これは特に高いモニタレベル(>=10)で有用 で、特定のテーブルを長時間ロックしているコマンドと、それらのロックが解放されるの を待っているコマンドを識別するために使用できるようになりました。 #2191842 (Job #107352) サーバー上で圧縮されて保存されているテキストファイルは、クライアント側でも解凍さ れるようになりました。 これは、サーバー側でキーワード展開が必要な +k タイプのフ ァイルを除きます。 レプリケーションでも、圧縮されたアーカイブを解凍や再圧縮する ことなく転送できるようになり、この恩恵を受けています。 2022.1(2022.1/2285021)マイナーな新機能 ------------------ #2261304 (Job #100964) p4 copy/clean/integ/merge/revert/submit/sync/undo' に '-K' フラグを追加し、+k タ イプのファイルでのキーワード展開を抑止するようにしました。 #2246523 (Job #103900) ** p4 print' に新しいオプション 'offset' と 'size' が追加され、 ファイルの一部を印 刷する機能が提供されました。 offset' が存在しないか、または負の値の場合、0 と見なされ、 ファイルの先頭から印 刷が始まります。size' が存在しないか、または負の値の場合、印刷はファイルの終わり まで続きます。 この変更は、バイナリファイルとテキストファイルの両方で、また プロキシサーバーと 転送レプリカで動作します。 #2242828 (Job #107538) *** 新しいオプション '-xD' は 'p4p -xD' コマンドを実行することにより、 プロキシサー バのサーバIDを表示または設定するために使用されます。 #2239115 (Job #108848) ** . 設定可能な "lbr.autocompress" のデフォルトが 1 になりました (以前は 0 でした)。 #2234167 (Job #108785) ** 'p4 topology' コマンドを追加しました。 p4 topology' コマンドに '-F' と '-T' フラグが追加され、それぞれ結果をフィルタリ ングし、報告されるフィールドを制限します。 #2230534 (Job #79935) p4d -jd' と 'p4d-jr' では、新しい '-R ' オプションにより、 チェックポイ ントを簡単に作成したり回復したりすることができるようになりました。 除外するテーブルをリストアップする代わりに、 '-R' オプションでサービスの種類を指 定します。これにより、p4dはそのサービスタイプに適したテーブルを除外するのに十分 です。 #2217838 (Job #108209) ***。 p4 topology' コマンドに新しい '-t' フラグが追加され、指定された日数以内に見たこ とのあるエントリに結果を制限するようになりました。 #2217622 (Job #107638) ** p4 topology' に新しいタグ付けされたフィールド 'LastSeenDate' が追加され、 サービ スエントリーが最後に見られた日時が表示されます。 #2216172 (Job #108025) ** p4 topology' コマンドに新しい '-d' フラグが追加され、日付に基づいてエントリを削 除するようになりました。 このフラグは '-e' と組み合わせてその日付以前のすべての レコードを削除したり、 '-s' と組み合わせて指定したサーバーアドレスでフィルタリン グしたりすることができます。 y' フラグは、レコードが永久に削除される前に必要です 。 #2210386 (Job #95923) ** この変更により、'p4d -jd' および 'p4d -jr' コマンドが強化・簡略化され、レプリカ のシードのためにフィルタリングされたチェックポイントを作成・再生することができる ようになりました。 p4d -jd' には新しいオプション '-P ' が追加され、チェックポイントの作 成時に必要なテーブルやレコードのフィルタリングを、指定したサーバスペックで行うよ うになりました。 さらに、対象のサーバIDがチェックポイントファイルに記録され、 'p4d -jr' は新しい サーバの server.id を設定するためにこれを使用します (既に設定されている場合を除 く)。 #2201395 (Job #95125) ** グループ指定に "Description" の新しいフィールドが追加されました。 2022.1 Patch 3 (2022.1/2361553)のバグ修正 ------------------------ #2358289 (Job #110505) ** 'p4 fstat -L' と 'p4 sync -L' はスペックディポとリモートディポファイル の引数をサポートするようになりました。 #2355956 (Job #105742) ** 'p4 diff' は、ファイルを同期する統合コマンドから棚上げされたファイルに対 して正しく差分を取るようになりました。 #2354729 (Job #110507) ** ファイル引数なしの 'p4 zip -c' は、もうサーバークラッシュを起こしません。 #2352779 (Job #104498) * サーバーがUnicodeモードの場合、'p4 submit' が "Translation of file content failed near line..." というエラーで失敗することがあり ました。この変更により、この問題が修正されました。 #2352579 (Job #112370) ** レプリカ上のグラフディポのLFSファイルに対する 'p4 sync' は、LFSファイルの 属性をファイルの内容として生成するだけで、失敗することがありました。この変 更により、この問題が修正されました。 #2352382 (Job #112600) ** サーバープロセスまたはスレッドが、db.monitorテーブルのロック情報を更新しよ うとしているときに、そのテーブルの書き込みロックを取得しようとしてブロックされた 場合、無限に再帰することはなくなりました。 #2351538 (Job #111229) * unicode+C、utf8+C および utf16+C タイプのファイルのクライアント側での 解凍が、最終的な文字セット変換の前に正しく完了するようになり、部分的な 文字変換エラーを回避することができるようになりました。 #2351273 (Job #111948) ** 'lbr.replication' が 'shared' または 'ondemand' に設定されている エッジサーバーで、コミットサーバーが使用中の場合、保留用のアーカイブファイルが 削除されなくなりました。 #2350945 (Job #112361) ** Windowsプラットフォームにおけるチェックポイント/ダンプ/ベリファイ操作で、重複する IOによるパフォーマンスの問題を修正しました。 #2349852 (Job #101073) ** 制限付きチェンジリスト内のパスへユーザーがアクセス権を保有していない、かつ、保留 付きチェンジリストに対して実行されば 'p4 change -o' のパフォーマンスが改善され ました。 #2348377 (Job #112471) ** クライアントビューが2行以上の場合、存在しないファイルの追加がうまくいかない場合が ありました。この問題は修正されました。 2022.1 Patch 2 (2022.1/2344699) のバグ修正 ------------------------ #2340063 (Job #112087) ** p4 sync をレプリカ上で実行すると、ファイルタイプ binary のグ ラフディポファイルが破損した状態でレプリカサーバーに同期され ることがありました。この変更により、この問題が修正されました。 #2336891 (Job #112174) ** エッジサーバーで p4 lock -g を実行した場合、エッジサーバーと コミットサーバー間で複数の通信要求が発生すると、レプリケーシ ョンをコマンドの最後に遅延させることでパフォーマンスが向上しました。 #2336186 (Job #112139) ** エッジサーバーで排他的にロックされたファイルに対して p4 revert を 実行すると、エッジサーバーとコミットサーバー間で複数の通信要求が発生 した場合にレプリケーションをコマンドの最後に遅延させることにより、パフォ ーマンスが向上しました。 #2336185 (Job #112112) ** 排他的にロックされたファイルに対してエッジサーバーで p4 edit または p4 delete を実行されると、エッジサーバーとコミットサー バー間で複数の通信要求が発生した場合にコマンドの最後にレプリ ケーションを遅延させるようになり、パフォーマンスが向上するように改善されました。 #2335001 (Job #111953) ** エッジサーバー上で実行される p4 lock -g は、構成可能変数 dm.lo cks.global.batch.net を使用するようになりました。 #2334412 (Job #111933) ** エッジサーバー上で p4 lock -g を実行したときに、コミットサー バーはエッジサーバーに返される結果をバッチ処理するようになり ました。バッチサイズは構成可能変数 dm.locks.global.result.batch.net で制御することができます。 #2333661 (Job #111963) ** エッジサーバー上で p4 fstat -OL を実行すると、構成可能変数 dm.locks.global.batch.net が使用されるようになりました。 #2333658 (Job #111950) ** 新しい構成可能変数 dm.locks.global.result.batch.net は、コミッ トサーバーからエッジサーバーに返されるグローバルロック結果の バッチサイズを制御します。 #2333649 (Job #111570) ** 多くのファイル引数を持つ p4 unlock のパフォーマンスが改善されました。 #2333641 (Job #111569) ** p4 revert -k は、新しい構成可能変数 dm.revert.batch に基づいて データベースに書き込まれるファイルの返却をバッチするようになりました(デフォルト は 10000 で、 以前は少なくとも 100 ファイルのバッチで更新を書き込んでいました)。 エッジサーバ ーでは、 コミットサーバーに送信される呼び出しの数を大幅に削減することもできます。 #2333189 (Job #111778, #111927) ** 新しい構成可能変数 dm.locks.excl.batch.net と dm.locks.global.batch.net は、 エッジサーバーからコミットサーバーへの排他ロックおよびグローバルロック要求のバッ チサイズを制御します。 #2331761 (Job #111529) ** 多くのファイル引数を持つ p4 lock のパフォーマンスが改善されました。 新しい構成可能変数 dm.lock.batch は、デフォルト値が 10000 で、 1 つのデータベーストランザクションで処理されるレコードのバッチサイズを定義します 。 #2331243 (Job #111916) ** アップグレード手順 "PopulateStreamViewsWithAtChanges" で発生するエラー 'No stream "//stream" exists at change NNN' または 'Stream "//stream" was deleted after change NNN' のアップグレードが修正されました。 #2328901 (Job #111654) ** dm.batch.net 構成可能変数のデフォルト値が1000から10000に増加しました。 #2325435 (Job #111912) ** ストリームビューのパスソースが空の場合、viewmatchがクラッシ ュするバグを修正しました。 #2324104 (Job #111469) ** p4 lock -g は、ロックされるファイルの数がバッチサイズの正確 な倍数である場合に、ハングアップする可能性がなくなりました。 #2319862 (Job #111227) ** p4 istat コマンドは、クライアントのワークスペースに関連付け られたストリームの インポートパスに変更指定子が与えられてい るかどうかによって、異なる結果を 出すことがありました。 これ は修正されました。 #2319277 (Job #111398, #111510) ** エッジサーバー上の p4 lock -g と p4 fstat -OL は、多数の結果 が返された場合にパフォーマンスが向上するようになりました。 #2318516 (Job #110678) ** 構成可能変数 dm.integ.multiplestreams が追加され、0 と 1 の値 を取り、デフォルトは 0 です。 1 に設定すると、どのストリームもタスクストリームで ない限り、 複数のストリーム統合ターゲットが許可されます。 #2313703 (Job #111487, #104580) ** p4 labelsync は、同じ接続で複数のコールが同じオートリロード ラベルを参照しても、サーバーをクラッシュさせなくなりました。 #2313663 (Job #109972) ** p4 fstat は、commit/edge 環境の任意のサーバーに対して実行し た場合に、edge サーバー上の排他ロックを正しく報告するようになりました。 #2313332 (Job #110633) ** コミットサーバーから最小限のネットワーク遅延以上離れたエッジ サーバー上で実行された場合、グローバルファイルまたは排他ロッ クされたファイルを含む多くのファイル引数を持つ p4 reopen の パフォーマンスが向上しました。 #2309677 (Job #105291) ** p4 user -d -F または p4 group -d -F を使用して保護テーブルの エントリを削除すると、インラインコメントが削除され、コメント が不正にシフトされなくなりました。 #2309511 (Job #111546) * ** *** **** OpenSSL が 1.1.1q #2308971 にアップグレードされました。 #2308971 (Job #110978) ** p4 protect は所有者のサブプロテクション仕様の Path フィール ドが与えられた引数と一致するかどうかを確認するようになりました。 2022.1 Patch 1 (2022.1/2305383) のバグ修正 ------------------------ #2304500 (Job #111120, #111121, #111123, #111126) ** 連携環境において、エッジサーバーがバージョン2020.2以上であり 、アップストリームサーバーがバージョン2020.1以下である場合、 ストリームのParentView機能が無効になりました。 同様に、上流サーバーのバージョンが2021.1以下の場合、stream - -viewmatch機能は無効化されました。 #2303762 (Job #111182) ** p4 fstat -L をグラフディポのあるサーバーに対して実行しても、 サーバーがクラッシュしないようになりました。 #2303008 (Job #101447) * タイムゾーンオフセットを計算する際のレースコンディションは修正され、 以前は並列に同期されたファイルの modtime に影響を及 ぼしていましたが、この問題は解決されました。 #2302463 (Job #110637) ** p4 groups コマンドの -ztag オプションは description フィール ドを欠いていました。この変更により、欠落していたフィールドが追加されました。 #2300847 (Job #111070) ** グラフディポとクラシックファイルの両方があり、offset または size オプションが使用されている場合に発行される p4 print コ マンドは usage エラーで失敗することがありました。この変更に より、この問題が修正されました。 #2300672 (Job #110932) ** 追加され、サブミットされず、新しいファイル名に移動されたファ イルに対して、fstatが不正なmovedFileを表示するバグを修正しました。 #2300512 (Job #111030) ** StreamQWorkerで、他のストリームが編集用にオープンされている 場合に、ストリームの変更が処理されないバグを修正しました。 #2298780 (Job #108541) ** まれに、ディポマッピングロジックの一部が無効になることがあり ました。このような事態を避けるため、ログメッセージを書き込む ようにしました。 #2298045 (Job #110832) ** ビューマッチ結果のパスタイプが間違っている可能性があるアップ グレードバグを修正しました。 #2297777 (Job #102389) ** LLISTタイプのカスタム仕様フィールドが確実にタブでフォーマッ トされるようになりました。 #2297125 (Job #050785, #110843) ** *** プロキシサーバー上の p4 -ztag info は、プロキシキャッシュのル ートディレクトリと 正しいプロキシルートディレクトリを表示す るようになりました。 #2297037 (Job #110093) ** *** **** SSLでリッスンするサービスは、繰り返される接続に対して追加の メモリを割り当てないようになりました。 #2296016 (Job #110836) ** noinherit parentviews を持つストリーム仕様からコンポーネント を削除しても、コンポーネントビューが削除されないバグを修正しました。 #2294480 (Job #110708) ** LDAP認証されたユーザーに対する p4 login は、そのユーザーが データベースに保存された期限切れのパスワードを持っている場合、 パスワード期限切れのメッセージを報告しなくなりました。 #2294315 (Job #109803) ** ビューが変更されていなくても、ストリーム仕様に変更があると StreamQWorkerがその変更を処理するバグを修正しました。 ビューに影響がある場合のみ、StreamQWorkerが変更処理を 行うように修正しました。 #2294018 (Job #110835) ** 親ビューをnoinheritしたストリームとストリームコンポーネント がある場合、コンポーネントのストリームパスが更新されると、コ ンポーネントビューへの変更が表示されないバグを修正しました。 #2293521 (Job #110859) ** 親と子の両方が削除された状態で p4 -ztag streams -a を実行す ると失敗するバグを修正しました。parentDeleted または parentO bliterated のどちらかを報告するようになりました。 #2293155 (Job #110359) ** WLIST カスタム仕様フィールドのすべての行が、先頭のタブで正し くフォーマットされるようにしました。 #2290985 (Job #110293) ** p4 topology -t は、入力値が最大範囲を超えた場合にエラーを報 告するようになりました。 #2290500 (Job #110666, #110804) ** ストリーム仕様 A にコンポーネント定義があり、ストリーム B が noinherit ParentVie w で作成された場合、 "Missing stream" エラーが発生することがありました。 この問題は修正されました。 #2290499 (Job #110789) ** アップグレードステップのPopulterStreamViewsWithAtChangesで発生する "Missing Stre am "エラーを修正しました。 #2289190 (Job #110735, #110753) ** ストリーム仕様が編集用に開かれていて、コンポーネントがストリ ーム仕様に追加された場合、送信時にコンポーネントと消費者の関 係が db.streamrelation に保存されるべきでしたが、保存されて いませんでした。 修正されました。この変更により、db.streamre lation のロックの問題も修正されました。 2022.1 (2022.1/2285021) のバグ修正 ------------------------ #2278182 (Job #110361) ** 任意のアドレスでリッスンしているサーバーの再起動時に、新しい トポロジーレコードに正しい日付が設定されるようになりました。 #2271353 (Job #110050) ** コミットサーバー上で p4 storage -v を実行しても、lbr.replica tion=shared で設定されたエッジサーバーからシェルビングされた ktext ファイルのファイルサイズが BAD! という報告をしなくな りました。 #2270664 (Job #110049) ** lbr.replication=shared のエッジサーバーからのサブミットで、 使用中の保留アーカイブファイルが削除されないようになりました。 #2269877 (Job #109910) ** lbr.replication=shared のエッジサーバーからの保留プロモ ーションで、コミットサーバーが 2020.2 以前の場合、保留の アーカイブファイルの不要なコピーを作成しないようになりました。 #2269263 (Job #109847) ** 保留したクライアントと異なるクライアントからの ktext ファイルの p4 unshelve は 、 そのファイルの将来の保留またはサブミットコマンドが "tampered with after resolve" で失敗する原因にならなくなりました。 #2268811 (Job #109848) ** lbr.replication=shared でエッジサーバ上に作成された保留 は、既存のアーカイブファイルを削除または上書きしなくなりました。 #2263620 (Job #109150) ** アーカイブへの複数の参照が存在する場合に、「p4 restore」がラ イブラリアン削除エラーで失敗しなくなりました。 #2261560 (Job #109831) ** 保留されたファイルを置き換えるために -r または -f を使用 した保留促進は、以前のファイルのチェックサムまたはサイズ と共に記録されなくなりました。 #2260183 (Job #108415) ** 同じワークスペースから保留処理中のエッジサーバーからファ イルをグローバルロックしても、保留処理でエッジサーバーの ロックが削除されなくなりました。 #2259033 (Job #108754) ** グラフオブジェクトの参照回数は、オブジェクトレコードを過度に ジャーナリングするのではなく、db.refcntadjust に保存されるよ うになりました。 #2258757 (Job #108285) ** p4 graph purge-refhist は、Repo名の一部として .git サフィッ クスを必要としなくなり、完全に検証されるようになりました。 #2256026 (Job #109575) * P4IGNORE のクライアント内部での処理が最適化され、ファイルシ ステムとメモリ内の両方の操作が削減されました。 #2254741 (Job #109709) ** エッジサーバーで大量の排他ロックされた (+l) ファイルを開くこ とが、より効率的になりました。 #2254699 (Job #109616) ** 古いバージョンのデータベースレコードを含むジャーナルをレプリ ケートすると、コミットサーバがクラッシュすることがありました。 これは修正されました。 #2254481 (Job #109725) ** p4 add は、既にチェックされているファイルに対して P4IGNORE チェックを行うようクライアントに要求しなくなりました。 #2253532 (Job #109148) ** p4 submit と p4 shelve は filesys.depot.min に対して影響を与 えるディポだけをチェックするようになりました。 #2249937 (Job #108754) ** 更新時のグラフディポオブジェクトの参照計算は、receive-pack が成功した後にバックグラウンドで行われるようになりました。 #2247996 (Job #109124) ** エッジサーバーからのサブミットに失敗した場合、コミットサーバ ーに転送されたすべてのアーカイブがクリーンアップされるように なりました。 #2244994 (Job #109370) ** エッジサーバーで p4 submit -e を実行しても、サブミットされる 保留されたファイルが重複排除されていない場合に追加のアー カイブを作成しなくなりました。 #2244339 (Job #109435) ** 保留昇格は、2020.2 以前のリリースからアップグレードする 前に p4 shelve で作成されたアーカイブファイルが、他のシェル ブされたチェンジリストによってまだ使用されていても上書きされ ないようになりました。 #2242404 (Job #109389) ** タスクストリームターゲットで統合オプション -1 を使用すること を禁じました。 #2241521 (Job #109343) ** バックグランドサブミットは、2020.2 以前のリリースからアップ グレードする前に p4 shelve で作成されたアーカイブファイルを 上書きしてしまう場合、標準の edge-submit にフォールバックす るようになりました。 #2239572 (Job #109272) ** 特定の条件下で、トリガーとバックグラウンドプロセス間のレース コンディションにより、トリガーの結果が失われる可能性がありま す。 #2237480 (Job #109210) ** p4 lock はタグ付きモードでテキストメッセージを返さないように なりました。 #2236113 (Job #108847) ** p4 submit は、2020.2 以前のリリースからアップグレードする前 に p4 shelve によって作成された、他の保留のされたチェンジリ ストによってまだ使用されているアーカイブファイルをもう上書きしません。 #2234955 (Job #109050, #109289) ** lbr.autocompress の構成可能変数が 1 に設定されている場合、'+D フ ァイルタイプ修飾子が無視され、RCS ファイルが作成されないとい う問題がありました。 この変更により、この問題が修正されました。 #2234869 (Job #108864) ** タグ付き出力モードでの p4 groups -v は db.user をロックしな いようになりました。 #2233787 (Job #108603, #109073) ** ストリーム仕様に関連付けられた制限付き変更リストは、そのスト リームへのリストアクセスがないユーザーには、ストリーム仕様を 表示しなくなりました。変更の説明は、ストリームスペックまたは その変更によって影響を受けるファイルへの読み取りアクセス権を 持つユーザーにのみ表示されます。 #2233706 (Job #109163) ** 大文字と小文字を区別しないサーバで削除されたレコードのジャー ナルエントリは、常にデータベースに保存された大文字と小文字を 含むレコードのキー部分を記録するようになりました。 #2233787 (Job #104047) ** スタンバイサーバーは、正しい db.upgrades テーブルをチェック するようになりました。 #2232017 (Job #107091) ** p4 stream -o は、2020.1 以前のコミットサーバーからレプリケー トする 2020.1 以上のエッジサーバーから実行できるようになりました。 #2227171 (Job #108172) ** 圧縮されたアーカイブのチェックサムがストレージテーブルに記録 されている場合、圧縮されたアーカイブは解凍されずに検証される ようになりました。これらのチェックサムは、以下のように実行す ることで生成できます。 p4 storage -u を実行することで生成できます。 注意: p4 storage -v は、 p4 verify でチェックサムが一致 するように計算されていない ktext ファイルに対して BAD を 報告しなくなりました。 #2225097 (Job #108573, #108792) ** エッジサーバー上の p4 reopen によるグローバルにロックされた ファイルの変更、ユーザー、タイプの更新は、コミットサーバー上 で正しく更新されるようになりました。 #2225097 (Job #108878) ** 特定の条件下で、RSH プロトコルの使用中にサーバーが STDOUT に ログ出力を書き込むことがありました。これは修正されました。 #2225097 (Job #108947) ** エッジサーバに対して実行される p4 switch は、保留が失敗 した場合でも、stash の変更をコミットサーバに正しく伝播するよ うになりました。 #2225057 (Job #110110) ** mimalloc ライブラリが 1.7.3 に更新されました。 #2224867 (Job #108934) * ** *** **** SSL ハンドシェイクタイムアウトの構成可能変数 ssl.client.timeou t は、より短い net.maxwait 構成可能変数値によって上書きされな くなりました。 #2223871 (Job #107762) ** レプリケーション待ちのコマンドなどの機能で現在のジャーナル位 置を決定する際に、(最近ローテーションされたジャーナルではな く) 現在のジャーナルが正しく使用されるようになりました。この ようなコマンドが、アップストリームサーバのジャーナルローテー ションによって極端に遅延することはなくなりました。 #2223852 (Job #102796) ** 'p4 renameuser' は、このコマンドの影響を受ける鍵付きリビジョンの ダイジェストを再計算するようになりました。キーが設定されたリビジョンのダイジェス トは、 代わりに構成可能変数 'dm.change.skipkeyed' が 1 に設定されている場合、 キーが設定されたリビジョンのダイジェストは、代わりに設定されなくなりました。 #2221826 (Job #108618) ** 複数のストリーム仕様の変更を連続して行った場合、タイミングの 問題で、最後の変更がストリームビューの一致機能に反映されない 場合がありました。 これは修正されました。 #2221183 (Job #108767) ** db.change/db.desc 間の p4d -xx 整合性チェックは、切り捨てら れた説明と完全な説明の間の不一致を正しく検出するようになりました。 #2220200 (Job #108791) ** この変更により、db.refcntadjust テーブルがレプリケーションか ら除外されました。また、'p4 journaldbchecksums が db.refcnta djust を処理しないように変更されました。 #2219912 (Job #96885) ** 同じワークスペースで並列サブミットとファイルの返却を同時に行うと、clientEnti ty/0,d serverlock ディレクトリの検索許可がオフになることがあ りました。これは修正されました。 #2219464 (Job #105051) ** p4 annotate コマンドはデフォルトでバイナリ diff を表示しない ので、'dm.annotate.maxsize 設定可能の制限は -t フラグが使用 されていない限りバイナリファイルに対して強制されなくなりました。 #2219255 (Job #102670) ** p4 fstat -Ob は、ディポがデフォルトでない場所にマップされて いる場合、または server.depot.root が使用されている場合にア ーカイブへの正しいパスを報告するようになりました。 #2218003 (Job #108779) ** 移動したファイルペアが異なるチェンジリストに分割されないよう にする機能拡張を行った後、'p4 reopen コマンドのパフォーマン スが低下していました。このパフォーマンスの問題は修正されました。 #2217097 (Job #104342) ** journalcopy 中にサーバのメモリマネージャ内で発生したメモリ割 り当ての失敗は、操作を非グレースリーに終了するのではなく、報 告されるようになりました。i オプションが指定された場合、ジャ ーナル・バッファ・サイズは操作が成功するまで再試行のたびに縮 小されます。 #2216121 (Job #108642) ** p4 topology の DestinationServerAddress は、仲介者がリッスン しているアドレスの 1 つではなく、仲介者が接続したアドレスと して記録されるようになりました。 #2214507 (Job #108591) ** 多くのインポートパスを持つストリームに関連する、まれに発生す るサーバークラッシュが修正されました。 #2214507 (Job #108581) ** エッジサーバーに連結されたフォワーディングレプリカに対して p4 opened -g を実行し ても、 分散設定エラーが報告されなくなりました。 #2214507 (Job #108553) ** エッジサーバーで p4 lock -g を実行し、現在のワークスペースで すでにロックされているファイルに対して実行しても、エラーが報告されなくなりました 。 #2214507 (Job #108528) ** エッジサーバーに連結されたフォワーディングレプリカに対して p4 fstat -OL を実行す ると、 グローバルロック情報が報告されるようになりました。 #2214253 (Job #108701) ** フォアグラウンドの p4 journalcopy コマンドを実行しようとした ときに P4TARGET サーバーで発生したエラー(つまり、 "startup.i" 構成可能変数で指 定されていない)は、 クライアントに渡されるのではなく、スタンバイサーバーに正しく返されるようになりま した。 #2214148 (Job #103362) ** partitioned タイプのクライアントは、そのクライアントで開いて いるファイルがある場合、'readonly タイプに変換することができ なくなりました。 #2213971 (Job #108022) ** lbr.storage.skipkeyed 構成可能変数のデフォルトは 2 になりました。 #2213659 (Job #108374) ** p4 topology のタグなし出力は、トポロジーテーブルスキーマと一 致するように再フォーマットされるようになりました。 #2209522 (Job #108613) ** v コマンドラインオプションをロギングカテゴリなしの数字に設定 してサーバーを起動しても、クラッシュしなくなりました。 #2209517 (Job #108451) ** グラフ "Compute and set Refcount" のアップグレードステップは 、ジャーナルファイルのトランザクション数を減らし、パフォーマ ンスを向上させるようになりました。 #2208701 (Job #108548) ** ディポがデフォルトでない場所にマップされている場合でも、アー カイブファイルへのクエリで見つかるサーバーからのファイル転送 の進捗情報が送信されるようになりました。 #2208700 (Job #108547) ** p4 verify -R は、'Map フィールドにデフォルトでないパス変換を 持つディポでアーカイブの検索に失敗しなくなりました。 #2208520 (Job #108583) ** p4 failover のタスクのひとつに、マスターサーバー上の特定の設 定項目をスタンバイの対応する値と一致するように更新することが あります。フェイルオーバー中にマスターサーバー上でこれらの設 定項目の 1 つが長さゼロの文字列に設定された場合、マスター上 のその構成可能変数は正しく処理されなかった可能性があります。 こ れは修正されました。 #2208328 (Job #108446) ** PopulateStreamRelationTable のアップグレードステップのパフォ ーマンスを向上させるための変更が施工されました。 #2208076 (Job #108430) ** 子ストリームが親から除外または分離パスを継承する場合、Stream View Match 機能が誤って子ストリームとして pathSource を識別 することがありました。 これは修正されました。 #2206113 (Job #108503) ** チケットの検証は、追加の中間サーバーを経由してエッジサーバー に対して実行されるコマンドに対して、正しく処理されるようにな りました。 #2203767 (Job #108316) ** p4 depot -d は、遅延コピーまたは重複排除された棚のいずれかに よってまだ使用されているディポの削除を防止するためにストレー ジテーブルを使用するようになりました。 #2202103 (Job #108010) ** p4 login はもはや db.view テーブルを開きません。 #2198808 (Job #108045) ** 稀なケースとして、内部コンテキスト構造が NULL になることがあ りました。このエラー状態は捕捉され報告されるようになりました。 #2196727 (Job #108084) ** サーバーアップグレード処理中に、ストレージのアップグレードと サーバーロックのクリーンアップの間に競合状態が発生しました。 これは修正されました。 #2194604 (Job #108129) ** 同時ジャーナル・ローテーション中に、現在のジャーナル位置が誤 って計算されることはなくなりました。 #2190761 (Job #108026) * クライアントは、転送サイズが 1KB 未満のファイルについて、フ ァイル単位の進行状況情報を受信できるようになりました。 #2190763 (Job #108027) ** サーバからのファイル転送の進行状況情報は、クライアントのファ イルシステム上のファイルの最終サイズではなく、転送されるファ イルサイズを正しく表すようになりました。この値は、アーカイブ ファイルを記述することで確認できます。 #2190311 (Job #108028) * 22.1以上のサーバーから無効なエンコードされたファイルタイプを 受信したクライアントは、エラーを報告するようになりました。 #2189571 (Job #073829) * タスクストリームは、-Tオプションを使用して消去することができ ます。このバグ修正により、@change指定でタスクストリームを抹 消する機能が追加されました。 ------------------------------------------------------------------------- 2021.2 (2021.2/2201121)主な新機能 ------------------ #2180319 (Job #107778, #107792) ** サーバーのメモリーマネージャーが mimalloc に変更され、Windows サーバーでの拡張機 能のサポートが可能になりました。 mimalloc のバージョンは p4 -ztag info と p4d -V で表示されます。 Linuxでメモリに制約のある環境でサーバーを実行する場合、vm.overcommit_memory sysc tlの値を2に設定する必 要があります。このsysctlを変更した後、追加のスワップ領域が必要になる場合がありま す。 詳細については、https://community.perforce.com/s/article/17500 を参照してくださ い。 #2169718 (Job #106370, #107662) ** p4 streams --viewmatch //depotpath は、 与えられた //depotPath を含むビューを持つストリーム、 またはそのビューを含むディポパスのストリーム名、インポートパスタイプ、 ストリームビューパス、およびディポパスを返します。 ディポパスの引数を持つ複数の --viewmatch フラグを指定することができます。 #2166164 (Job #92986) ** グラフディポのオブジェクトは参照カウントされるようになり、'p4 graph gc が ガベージコレクションを実行し、孤立したオブジェクトを削除できるようになりました。 #2158104 (Job #89984) ** Stream Specsのパスでditto (&) mappingを使用できるようになり ました。新しいパスタイプ import& は、同じソースを複数の読み取り専用ター ゲットにマッピングすることができます。p4 help stream を参照してください。 #2154547 (Job #71723, #96278, #104780) * ** *** **** P4TRUSTは、サーバーが自己署名でない証明書を提供し、クライアントが検証可能な 場合は不要になりました。 2021.2 C/C++ P4API(派生APIを含む)をベースにしたクライアントは、ローカルシステ ム のCA証明書ストアに対してサーバーのSSL証明書を検証し、その証明書のサブジェクトと クライ アントが使用するP4PORTのホスト部分を比較しようとするようになりました。成功すれば P4TRUSTは不要になりますが、 そうでなければその接続には引き続きP4TRUSTが必要です。 CAのパスは、'ssl.client.ca.path'というクライアント側の設定項目で指定できます。 もし、システムのCAストアに存在しない場合や、特定のCAに対する認証が必要な場合です 。 検証は、 ssl.client.cert.validate クライアント側構成可能変数を0に設定する ことで無効にでき、以前のP4TRUSTのみの仕組みに戻すことができます。このクライアン ト側の構 成可能変数を2に設定すると、CAの検証はスキップされ、サーバー証明書のサブジェクト がクラ イアントのP4PORTと一致するかどうかだけが確認されます。 p4 trust は、サーバー証明書の検証に関係なく使用することができ、サーバーの IP ア ドレスと、 サーバー証明書が自己署名されていない場合はホスト名に対して P4TRUST レコードを作 成します。 クライアント側の構成可能変数である ssl.client.trust.name を 0 に設定すると、 ホスト名の記録を無効にできます。クライアント側の構成可能変数を 2 に設定すると、 p4 trust はサーバーの IP アドレスを記録しませんが、自己署名証明書を持たないサー バー のホスト名だけは記録します。 これらのクライアント側の設定は、 P4CONFIG ファイルで設定するか、 -v グローバルフ ラグを使用 してクライアントに渡すことができます。プロキシやブローカーは、P4DEBUGや'-v'の一 部として設定可 能なものを受け入れます。 p4 configure set はサーバー上で使用することができ、(変 更時に フルストップと再起動が必要です。) これはすべてのサーバー間のSSL接続に適用されま す: サーバーのクライアント側の設定は、サーバーに接続するクライアントには適用されませ ん。 Technology Preview features in 2021.2 (2021.2/2201121) #2163747 (Job #105594) ** p4 topology は、コマンドを実行したサーバーに直接および間接的 に接続されているすべてのHelix Coreサービスの一覧を表示します。 このコマンドはsuperユーザーとoperatorユーザーのみが実行できます。 2021.2 (2021.2/2201121)マイナーな新機能 ------------------ #2160834 (Job #87753) ** p4 labels -R は出力をオートリロードラベルに制限します。 #2159960 (Job #104790) ** 移動したファイルペアのファイルが見つからないために発生する p4 submit の失敗は、 "Cannot submit half of a moved file pair" というエラーメッセージを 追加で報告するようになりました。 #2149027 (Job #74084) ** 転送レプリカをエッジサーバーから連結できるようになりました。 正しく動作させるためには、転送レプリカはserverIDと、ReplicatingFromフィールドが 正しく入力された対応するサーバースペックを持っている必要があります。 #2147664 (Job #97304) ** 属性のプロパゲーションがエッジサーバーでサポートされるようになりました。 #2142870 (Job #106990) ** ディポファイルに対するライブラリアン操作で、適用可能な閾値を 超えた場合にメトリクスが報告されるようになりました。トラッキ ングメトリクスはライブラリアンファイルの種類 (例: RCS、バイ ナリなど) ごとに報告されます。 #2135777 (Job #96589) ** 新しい構成可能変数 dm.open.show.globallocks を 1 に設定すると 、エッジサーバー上のファイルを開くコマンドは、コミットサーバ ーに照会してそれらのファイルに影響を与えるグローバルロックを 報告するようになります。 #2128577 (Job #106385) ** p4 describe をグラフディポの変更に対して実行すると、サブモジ ュールの変更が diff セクションに表示され、参照された SHA1 が 比較されるようになりました。 #2125653 (Job #105804) ** p4 fstat -OL をエッジサーバーに対して実行すると、コミットサ ーバーに問い合わせることにより、指定したファイルに適用される グローバルロックが表示されるようになりました。 #2122156 (Job #53509) ** 構造化ログは、閾値に達した後に書き込まれるログエントリをバッ ファリングできるようになりました。閾値は、新しい構成可能変数 serverlog.bufsz.N を設定することで、ログごとにバイト 単位で定義されます。 -------------------------------------------------------------------------- Important note: Please refer to: http://www.perforce.com/perforce/r21.2/user/relnotes.txt to get up to date GA and post-GA information about this release. -------------------------------------------------------------------------- 2021.2 Patch 6 (2021.2/2338640)のバグ修正 ------------------------ #2335571 (Job #101073) ** 制限された変更のパスにユーザーがアクセスできない場合に、保留のされた制限された変 更の p4 change -o でパフォーマンスが改善されました。 #2334155 (Job #112059) ** クエリーと同じ接続で作成されたオートリロードされたラベルへのクエリーが再び可能に なりました。 #2328900 (Job #111654) ** dm.batch.net 設定可能のデフォルト値は 1000 から 10000 に増加しました。 #2327977 (Job #104342) ** journalcopy 中にサーバのメモリマネージャ内で発生したメモリ割り当ての失敗は、 操作を非優先で終了させるのではなく、報告されるようになりました。 #2327536 (Job #108701) ** フォアグラウンドの p4 journalcopy コマンドを満たそうとしたと きに P4TARGET サーバで発生したエラー (すなわち "startup.i" 構成可能変数で指定されていない) が、繰り返し接続された場合に正し く表示されるようになりました。 #2325260 (Job #111570) ** 多くのファイル引数を持つ p4 unlock のパフォーマンスが改善さ れました。 #2324106 (Job #111469) ** p4 lock -g は、ロックされるファイルの数がバッチサイズの正確 な倍数である場合に、ハングアップすることがなくなりました。 #2323530 (Job #111529) ** 多くのファイル引数を持つ p4 lock のパフォーマンスが向上しま した。新しい構成可能変数 dm.lock.batch は、デフォルト値 10000 で、1 つのデータベーストランザクションで処理されるレコードの バッチサイズを定義します。 2021.2 Patch 5 (2021.2/2321724)のバグ修正 ------------------------ #2319682 (Job #111227) ** p4 istat コマンドは、クライアントワークスペースに関連付けら れたストリームのインポートパスに変更指定子が与えられているか どうかによって、異なる結果を出すことがありました。 これは修 正されました。 #2318196 (Job #111398, #111510) ** エッジサーバー上の p4 lock -g と p4 fstat -OL は、多数の結果 が返された場合にパフォーマンスが向上するようになりました。 #2313915 (Job #110678) ** 構成可能変数 dm.integ.multiplestreams が追加され、0 と 1 の値 を取り、デフォルトは 0 です。 1 に設定すると、どのストリーム もタスクストリームでない限り、複数のストリーム統合ターゲットが許可されます。 #2313704 (Job #111487, #104580) ** p4 labelsync は、同じ接続で複数のコールが同じオートリロード ラベルを参照しても、サーバーをクラッシュさせなくなりました。 #2312873 (Job #110633) ** コミットサーバーから最小限のネットワーク遅延で分離されたエッ ジサーバー上で実行される場合、グローバルファイルまたは排他的 にロックされたファイルを含む多くのファイル引数を持つ p4 reop en のパフォーマンスが改善されました。 #2312250 (Job #109972) ** p4 fstat は、コミット/エッジ環境内の任意のサーバーに対して実 行された場合、エッジサーバー上の排他ロックを正しく報告するようになりました。 #2309511 (Job #111546) * ** *** **** OpenSSL が 1.1.1q #2307382 にアップグレードされました。 #2307382 (Job #105291) ** p4 user -d -F や p4 group -d -F を使って保護テーブルのエント リを削除すると、 インラインコメントが削除され、コメントが不正にシフトされなくな りました。 #2306882 (Job #111182) ** p4 fstat -L をグラフディポのあるサーバーに対して実行しても、 サーバーがクラッシュしないようになりました。 #2304738 (Job #110978) ** p4 protect は、所有者の sub-protections spec の Path フィー ルドが提供された引数と一致するかどうかを検証するようになりました。 #2302638 (Job #111120, #111121, #111123, #111126) ** 連携環境において、エッジサーバーがバージョン 2020.2 以上で、アップストリームサー バー がバージョン 2020.1 以下の場合、Stream ParentView 機能が無効になりました。 #2299228 (Job #111030) ** StreamQWorkerで、他のストリームが編集用に開かれている場合、 ストリームの変更が処理されないバグを修正しました。 #2298781 (Job #108541) ** ディポマッピングロジックの一部が無効になることがありました。 このようなことが起こらないように、ログメッセージが書き込まれるようになりました。 #2297778 (Job #110359) ** WLIST カスタム仕様フィールドのすべての行が、先頭のタブで正し くフォーマットされることを確認します。 #2297123 (Job #050785, #110843) ** *** プロキシサーバー上の p4 -ztag info は、プロキシキャッシュの ルートディレクトリと正しいプロキシルートディレクトリを表示するようになりました。 #2296902 (Job #109803) ** ストリーム仕様に変更があると、ビューが変更されていなくてもStreamQWorkerがその変 更を 処理するバグを修正しました。 ビューに影響がある場合のみ、StreamQWorkerが変更処理 を 行うように修正しました。 #2294479 (Job #110708) ** LDAP 認証されたユーザーのための p4 login は、ユーザーがデータベースに保存されて いる 期限切れのパスワードを持っている場合、パスワード期限切れのメッセージを報告しなく なりました。 #2288554 (Job #103362) ** partitioned タイプのクライアントは、そのクライアントで開いて いるファイルがある場合、'readonly タイプに変換することができ なくなりました。 #2278180 (Job #110361) ** 指定されていないホストアドレスでサーバを再起動すると、db.top ology データベーステーブルの新しいトポロジレコードに正しい日 付が設定されるようになりました。 #2277678 (Job #110387) ** Extension用ディポが削除された場合、レプリケーションの開始に失敗する ことはなくなりました。 #2275696 (Job #110093) ** *** **** SSL でリッスンするサービスは、繰り返される接続のために追加の メモリを割り当てなくなりました。 2021.2 Patch 4 (2021.2/2273812)のバグ修正 ------------------------ #2272545 (Job #109910) ** コミットサーバーが 2020.2 より前のバージョンで実行されている 場合、保留促進操作は保留アーカイブファイルの新しいコピーを不必要に 作成しないようになりました。 #2271349 (Job #110050) ** lbr.replication が shared に設定されている場合、commit サーバー上で p4 storage -v を実行しても、展開されていないダイジェストがシェルブ操作中に db.st oragesh テーブルに 保存されるので、ktext ファイルのサイズが BAD ! となることはなくなりました。 #2271156 (Job #108415) ** 同じワークスペースから保留処理中のエッジサーバーからファイルをグローバルロックし ても、 保留処理によってエッジサーバー上のロックが解除されなくなりました。 #2270673 (Job #110049) ** エッジのサブミット操作では、lbr.replication が設定されている場合、 エッジサーバー上の既存の保留アーカイブファイルを削除しなくなりました。 #2270123 (Job #109709) ** エッジサーバー上で大量の排他的ロック (+l) ファイルを開くことが、より効率的になり ました。 #2269259 (Job #109847) ** p4 unshelve コマンドを別のクライアントから実行すると、"tampered with after resol ve" で失敗することがありました。この変更により、この問題が修正されました。 #2268993 (Job #109150) ** アーカイブファイルへの複数の参照が存在する場合、'p4 restore がライブラリアン削除 エラーで失敗する ことがありました。この変更により、この問題が修正されました。 #2268892 (Job #109848) ** lbr.replication が shared に設定されている場合、shelve 操作によってエッジサーバ ー上の 既存の shelve アーカイブファイルが削除または上書きされないようになりました。 #2266263 (Job #109988) ** P4V から p4 info を実行しても、過剰な数のデータベースロック がかかることはなくなりました。 #2260566 (Job #109959) * ** *** **** OpenSSL が 1.1.1n にアップグレードされ、脆弱性 CVE-2022-0778に対処しました。 #2254700 (Job #109616) ** 古いバージョンのデータベースレコードを含むジャーナルを複製す ると、コミットサーバがクラッシュすることがありました。これは修正されました。 #2245087 (Job #109370) ** Edge サーバー上で p4 submit -e を実行すると、既存のアーカイブが 他の保留によって共有されている場合にのみ新しいアーカイブが作成されます。 #2244753 (Job #109435) ** 保留プロモーションは、2020.2 へのアップグレード前に p4 shelve で 作成された、保留された他のチェンジリストがまだ使用しているアーカイブファイ ルを上書きしないようになりました。 #2244265 (Job #109210) ** p4 lock はタグ付きモードでテキストメッセージを返さないようになりました。 #2242014 (Job #109343) ** バックグランドサブミットは、2020.2 へのアップグレード前に p4 shelve で作成された 、 他の保留のされたチェンジリストでまだ使用されているアーカイブファイルを上書きして しまう場合、 標準の edge-submit にフォールバックするようになった。 #2241748 (Job #109389) ** タスクストリームターゲットで統合オプション -1 を使用できないようにしました。 #2237948 (Job #108847) ** p4 submit は、2020.2 へのアップグレード前に p4 shelve によって作成された、 他の保留のされたチェンジリストによってまだ使用されているアーカイブファイルを上書 きしなくなりました。 #2236990 (Job #108767) ** db.change/db.desc 間の p4d -xx 整合性チェックは、切り捨てら れた説明と完全な説明の間の不一致を正しく検出するようになりました。 #2234572 (Job #108864) ** タグ付けされた p4 groups -v が db.user に対してロックレスであることを確実にする ようになりました。 #2233170 (Job #108603, #109073) ** ストリーム仕様の変更が変更リストにあり、変更リストのタイプが制限されているか、 構成可能変数 defaultChangeType が restricted に設定されている場合、 リストアクセスを持たないユーザーが変更中のストリーム仕様を見たり、変更リスト中の 変更を見たり、 読み込みアクセスしか持たないユーザーが変更の説明を読んだりすることが可能でした。 これは修正されました。 #2231623 (Job #107091) ** 2019.2 コミットサーバーに接続された 2020.1 エッジサーバーからの p4 stream -o を 許可するようになりました。 #2230127 (Job #108026) * クライアントは、転送サイズが 1KB 未満のファイルについて、ファイルごとの進行状況 情報を 受け取ることができるようになりました。 #2230127 (Job #108548, #108027) ** サーバーからのファイル転送の進捗情報は、クライアントのファイルシステム上のファイ ルの最終サイズではなく、 転送されるファイルサイズを正しく表すようになりました。この値は、アーカイブファイ ルを指定することによって検出されます。 これは、ディポがデフォルトでない場所にマップされている場合でも動作するようになり ました。 #2229316 (Job #108642) ** p4 topology の DestinationServerAddress は、中継サーバがリッスンしているアドレス の一つではなく、 中継サーバが接続したアドレスを記録するようになりました。 #2226023 (Job #108547) ** p4 verify -R は、'Map フィールドにデフォルトでないパス変換があるディポでアーカイ ブの検索に失敗しなくなりました。 #2225062 (Job #108613) ** カテゴリーを記録せずに、-v コマンドラインオプションに数字だけを設定してサーバー を起動しても、クラッシュしなくなりました。 #2225048 (Job #108503) ** エッジサーバと追加の中間サーバが関与している場合、特定のコマンドのチケットの検証 に失敗しました。これは修正されました。 #2224929 (Job #108947) ** エッジサーバーに対して実行される p4 switch は、保留に失敗しても stash の変更をコ ミットサーバーに正しく伝播するよう になりました。 #2224925 (Job #108934) * ** *** **** SSL ハンドシェイクタイムアウトの構成可能変数 ssl.client.timeout は、 より短い net.maxwait 構成可能変数値によって上書きされなくなりました。 #2223926 (Job #108878, #109272) ** 特定の条件下で、RSH プロトコルの使用中にサーバーが STDOUT に ログ出力を書き込む可能性がありました。これは修正されました。 #2222490 (Job #107762) ** レプリケーションを待つコマンドが、アップストリームサーバのジ ャーナルローテーションによって極端に遅延することはなくなりました。 #2222213 (Job #108791) ** 今回の変更により、db.refcntadjust テーブルがレプリケーションから除外されました。 また、db.refcntadjustを処理しないように p4 journaldbchecksums も変更されました 。 #2221719 (Job #108618) ** 複数のストリーム仕様の変更を連続して行った場合、タイミングの問題により、 最後の変更がストリームビューの一致機能に反映されないことがありました。 これは修 正されました。 2021.2 Patch 1 (2021.2/2220431)のバグ修正 ------------------------ #2217542 (Job #108779) ** 移動したファイルペアが異なるチェンジリストに分割されないようにする機能拡張を行っ た後、 p4 reopen コマンドのパフォーマンスが低下していました。このパフォーマンスの問題は 修正されました。 #2216544 (Job #108573, #108792) ** エッジサーバー上の p4 reopen によるグローバルにロックされたファイルの変更、ユー ザー、タイプの更新は、 コミットサーバー上で正しく更新されるようになりました。 #2209739 (Job #108451) ** アップグレード手順 "Compute and set Refcount" は、ジャーナルテーブルで多数の小さ なトランザクションを生成し、 レプリケーションを低下させることがありました。この変更により、この問題が修正され ました。 #2208728 (Job #108591) ** 多くのインポートパスを持つストリームに関連する、まれなサーバークラッシュが修正さ れました。 #2208178 (Job #108446) ** PopulateStreamRelationTable アップグレードステップのパフォーマンスを向上させるた めの変更が施工されました。 #2207580 (Job #108581) ** エッジサーバーに連結されたフォワーディングレプリカに対して p4 opened -g を実行し ても、 分散構成エラーが報告されなくなりました。 #2207473 (Job #108553) ** エッジサーバー上で p4 lock -g を実行し、現在のワークスペースで既にロックされてい るファイルに対して実行しても、 エラーが報告されなくなりました。 #2207212 (Job #108045) ** 稀なケースとして、内部コンテキスト構造が NULL になることがあります。このエラー状 態は捕捉され報告されるようになりました。 #2207211 (Job #108528) ** エッジサーバーに連結されたフォワーディングレプリカに対して p4 fstat -OL を実行す ると、 グローバルロック情報が報告されるようになりました。 #2207057 (Job #108430) ** 子ストリームが親ストリームから除外または分離パスを継承する場合、Stream View Matc h 機能が、 pathSource を子ストリームとして誤って識別することがありました。 修正されました。 #2197174 (Job #108166) ** アップグレード後に p4 upgrades を使用すると、ログファイルに "Locking failure: db.counters locked after db.upgrades!" と いうロックエラーが出力される問題を修正しました。 #2187256 (Job #101618) ** fstat -Rs -e -Ol @= コマンドは、削除または移動/削除のた めに開かれたファイルのような、 削除された保留ファイルのダイジェストを報告することがありました。 この fstat コマンドのバリエーションは、削除されたファイルのダイジェストを報告し ないように修正されました。 #2185853 (Job #105430) ** マージ解決で、マージの 1 部分の最後の 2 行が正しく結合されないことがありました。 これは、ベース、ソース、またはターゲットのファイルの最終行に行末文字がない場合に 発生する可能性があります。 この問題は、デフォルトで 0 に設定されている新しい構成可能変数 merge.dl.endeol を 1 に設定すると解決されます。 ただし、構成可能変数を設定しなくても正しく解決される場合があり、手動で解決しなけ ればならない競合が登録されることがあります。 #2186481 (Job #107943) ** dm.protects.streamspec 設定可能項目が 1 に設定されている場合、 存在しないストリームに対して p4 stream -ov を実行することができるようになりまし た。 #2184709 (Job #106310, #90948) ** pull -u --batch コマンドは、転送エラーが発生した時にそのバッチを過度に再試行し、 pull スレッドが他のアーカイブを要求するために移動するのではなく、ストールする可 能性がありました。 これは、2019.2 で接続に失敗した後に pull -u --batch が再開できるように修正された ことによるリグレッションが原因でした。 これらのバグは両方とも修正されました。 #2183935 Import&とRemapped PathのLH Sidesが同一だと、リマップビューとimport&ビューの両方 がクライアントビューに表示される というStream仕様の問題を修正しました。 #2181960 (Job #102576, #107859) ** ストリーム仕様のIgnoredフィールドの各エントリーの連続したドットの最大数は5個にな りました。 #2179619 (Job #104877) ** p4 reopen -c コマンドが移動したファイルを含むコマンドライン引数で使用された場合 、 同じ移動ペアの movedFrom と movedTo ファイルが異なるチェンジリストにまたがって分 割される可能性がありましたが、これを修正しました。 p4 reopen -c は p4 revert で使われるのと同じ動作で、移動のペアの分割を防ごうとす るようになりました。 このシナリオで movedTo ファイルだけが指定された場合、移動したペアの両方のファイ ルが指定された変更に正常に再オープンされます。 movedFrom ファイルだけが指定された場合、このコマンドは成功しません。 #2179490 (Job #107107) ** 親ストリーム import+ が同じビュー上の子ストリーム import をサブミット可能にする ことを防止します。 #2179101 (Job #107756) ** 生成されたViewにおいて、親のimport&が子のimport+をオーバーライドしないようにしま す。 親/子階層で同一のパスを持つストリームでは、子 import+ が親の import& をオーバー ライドする必要があります。 #2178325 (Job #105916) ** p4 reconcile は、同上マップと変更ビューを持つクライアントのワークスペースを正し く処理するようになりました。 #2176143 (Job #107796) * ** *** **** OpenSSL が 1.1.1k にアップグレードされました。 #2172103 (Job #107572) ** コミットサーバーから p4 sync または p4 print を実行すると、バックグラウンドでの サブミット時に、 要求されたアーカイブファイルがまだオリジンのエッジサーバーから取得されていない場 合、 ライブラリアンエラーが報告されることがありました。これは、これらのアーカイブがオ ンデマンドでフェッチされるようにすることで修正されました。 #2170596 (Job #107537) **** Broker のサーバー ID を設定する例が、サンプル設定ファイルに追加されました。 #2168285 (Job #106452) ** タグ付きフィルタオプション -T が使用されている場合、ログファイルのコマンド引数に 印刷不可能な文字が含まれないようになりました。 #2166345 (Job #107354) ** ktext ファイルの digest と size フィールドは、それらのリビジョンを含む提出された 変更リストが更新されると、再計算されるよ うになりました。新しい構成可能変数 dm.change.skipkeyed を 1 に設定すると、再計算 がスキップされ、代わりに両方のフィ ールドがアンセットされます。 #2165780 (Job #107513) * ** SQLite (拡張機能用) が 3.36.0 にアップグレードされました。 #2165714 (Job #107736) ** OpenLDAP が 2.4.59 にアップグレードされました。 #2165146 (Job #107505) ** Cyrus-SASL に CVE-2019-19906 に対応するパッチが適用されました。 #2163884 (Job #107252) ** p4 changes コマンドを使用し、存在しないクライアントを指定すると、ClientEntity サ ーバーロックが漏れる可能性がありました。 これは修正されました。 #2161336 (Job #107362) ** ストレージスキャンが、破損した RCS 形式ファイルを処理した後に、ディレクトリ内の 有効なアーカイブファイルを無視する可能性がありました。 これは修正されました。 #2160517 (Job #104080) ** p4 shelve は ktext タイプのファイルを正しく重複排除するようになりました。 #2159543 (Job #106143) ** コミットサーバとエッジサーバの間に遅延があり、コミットサーバへのアーカイブの転送 が遅い場合、 スタンバイサーバからコミットサーバへの pull -u スレッドが、昇格した保留変更から のアーカイブの転送に失敗することがありました。 この問題は、スタンバイサーバーの pull -u スレッドが見つからないアーカイブの転送 を再試行できるようにすることで解決されました。 #2159278 (Job #107283) ** p4 unload -p は、コミットサーバー上で重複排除された保留ファイルのプロモートに失 敗しないようになりました。 #2158807 (Job #107119) ** 親なしタスクストリームへの統合を阻害するバグを修正しました。 #2158799 (Job #106906) ** ストリームスペックパーミッションが存在しない場合に、ストリームスペックの提出を妨 げるバグを修正しました。 どこでも OPEN 権限があれば、ストリーム仕様の提出が可能になりました。 いずれかの ストリームスペックパーミッションが存在する場合、 特定のストリームスペックに対してストリームスペックパーミッションが必要です。 #2158021 (Job #104691) ** 新しい設定変数 dm.populate.skipkeyed を 1 に設定すると、p4 populate コマンドの実 行中に ktext ファイルの digest と filesize を再計算するのではなく、設定を解除するようになりました。 #2156138 (Job #107216) * pshufb 命令を実行できない古いプロセッサは、 compress オプションが設定されたクラ イアント経由でファイルを転送すると、 p4 プログラムをクラッシュさせる可能性がありました。これは修正されました。 #2154419 (Job #107209) ** ファイルを移動し、読み込み、統合した後に、読み込んだファイルの将来の統合が統合先 の移動したファイルをターゲットにするという統合に関する問題が修正されました。 #2153520 (Job #107115) ** バックグラウンド・スレッドでのジャーナル・コピー中に発生した、スタンバイまたはフ ォワーディング・スタンバイのサーバ・ログに報告されるエラーは、 エラー・メッセージの一部が欠落しないようになりました。 #2149996 (Job #91036) ** p4 reconcile は、クライアント上のファイルがサーバー上のファイルと同一で、modtime が変更された場合、 have レコードの synctime を更新するようになりました。これにより、今後 p4 reconci le -m を実行したときのパフォーマンスが向上します。 #2149899 (Bug #106795) ** ソースファイルが統合された後、以前の統合範囲でソースファイルのリビジョンが取り消 され、後の統合の試みで、すべてのリビジョンがすでに統合されたと主張する、 取り消し問題を修正しました。構成可能変数 dm.integ.undo と、統合オプション p4 int eg -Ru は、統合範囲にない以前の統合に対する統合 クレジットを作成するだけで、この問題を解決します。 #2148282 (Job #99138) ** SSSE3 拡張を実装していない CPU をサポートしました。このため、古い AMD プロセッサ で p4 unzip が失敗することがありました。 #2144933 (Job #106998) ** p4d -xx は db.rev/db.change テーブルペアの整合性チェック中に、より一貫したプレー スホルダの変更レコードを作成するようになりました。 #2143700 (Job #105082) * ** cURL (拡張モジュール用) が 7.75.0 にアップグレードされました。 #2143699 (Job #105082) * ** Lua (拡張モジュール用) が 5.3.6 にアップグレードされました。 #2143698 (Job #105082) * ** Lua-cURLv3 (拡張機能用) が 0.3.12 にアップグレードされました。 #2142435 (Job #102776, #106796) ** p4 help resolve を更新し、自動マージによる解決 ('p4 resolve -am') と手動による受 け入れマージによる解決 ('p4 resolve で am オプションを選択) を 区別するようにしました。 自動マージで解決する場合auto-merge で解決しても、すべて の統合がマージされるとは限りません。 #2139752 (Job #106707) ** 20.2 以前のサーバーで作成された保留リビジョンに対して、変更番号の降順で p4 submi t -e を複数回実行すると、間違ってアーカイブを上書きしてしまうことがありました。 これは修正されました。 #2139749 (Job #106645) ** p4 storage -d -y は、アーカイブの削除や移動中に、すべてのテーブルロックを解放す るようになりました。 #2132125 (Job #106665) ** ライセンスサーバーのRepo数制限は、ライセンスで特にオーバーライドされない限り無制 限になりました。 #2131605 (Job #106610) ** 昇格された保留のされた変更に対して p4 submit -e -b を実行すると、その変更に関連 するアーカイブがコミットサーバーで失われることがありました。 これは修正されました。 #2130772 (Job #106579) ** ライセンスのない環境下で作成できるRepo数の上限は 3 に変更されました。 #2129703 (Job #106620) ** アップグレードステップの状態をアップストリームサーバに問い合 わせたときに発生するエラーは、ダウンストリームに正しく伝搬さ れるようになりました。 #2129526 (Job #106628) ** 通常発生しない特定の条件下で、integrate 用に開かれているが解決レコードがないファ イルが、 サブミット中にサーバをクラッシュさせる可能性がありました。これは修正されました。 #2124389 (Job #106228, #106333) ** p4d -xv は、最初のエラーの後に終了するのではなく、検証に失敗した各テーブルのエラ ーを報告するようになりました。 #2123505 (Job #105391) ** ストレージテーブルを使用したアーカイブの検証のパフォーマンスが改善されました。 ('p4 verify -Z', p4 storage -v') #2122892 (Job #106380) ** アーカイブが見つからないことが p4 verify -z で報告されないことがありました。これ は修正されました。 #2120207 (Job #104527) ** ワイルドカードが埋め込まれたストリームビューの生成が誤って生成される問題を修正し ました。 ストリームがメインラインの孫で、1つのパラメータのインポートパスと、インポートパ スに含まれる共有パスを持つ場合、 ワイルドカードが埋め込まれた最初の共有パスに対して生成されるビューが不正になりま す。 この問題は、LinuxとWindowsのプラットフォームでのみ発生しました。 #2116954 (Job #106209) ** レプリカサーバーに対して実行された p4 license -u コマンドは、コミットサーバーに 転送され、 権威ある応答が得られるようになりました。レプリカにインストールされているライセン スを照会するには、 'p4 license -u -l を実行します。 #2114810 (Job #106109) ** スペース文字を含むクライアントワークスペースを削除すると、クライアントエンティテ ィのサーバーロックが残りました。 これは修正されました。 #2109884 (Job #107924) * スレッドベースのクライアント転送クラスは、接続エラー時にミューテックスデッドロッ クに入ることができなくなりました。 -------------------------------------------------------------------------- 2021.1 (2021.1/2126753)主な新機能 ------------------ #2050924 (Job #104782) ** リアルタイムパフォーマンスカウンター P4Dサーバーは、ファイルバックされた共有メモリー内の多くのサーバー全体のパフォー マンスカウンターを追跡するようになりました。 この機能は、以下の場合に有効になります。 rt.monitorfile configurable が設定され、共有メモリのバックアップに使用するファイ ルが指定されている場合、 この機能が有効になります。カウンターは、P4APIのMonItemsクラスを使って外部アプリ ケーションから読み込むことができます。 p4mon-prometheus-exporter) や、 p4d を --show-realtime フラグ付きで実行、 もしくは、 p4 monitor realtime を実行することで、外部アプリケーションからカウン タを読み込むことができます。 詳しくは p4 help realtime を参照してください。 rt.monitorfile への変更は、サーバーの再起動後に適用されます。 2021.1 (2021.1/2126753)マイナーな新機能 ------------------ #2122485 (Job #94296, #106251) ** ターゲットパスがソースパスの部分文字列の場合、またはその逆の場合にファイルを移動 または名前変更することができるようになりました。 例:p4 move //depot/main/A //depot/main/A/A #2118597 (Job #86714, #106051) ** p4 obliterate に新しいフラグ、--purged-only が追加されました。 このフラグは、以前にパージされた rev レコードを削除します。 #2104005 (Job #105160) ** p4 failover のプレビューモードでは、エラーや問題が検出されない場合、 "No errors reported" というメッセージを表示するようになりました。 プレビューモードでの問題検出は、実際のフェイルオーバーで遭遇するよりも多くのエラ ーや警告を報告する可能性があることに注意してください。 #2095201 (Job #95658, #101217) ** ファイルの移動または名前の変更を行い、2つ目のファイルを1つ目のファイルの元の名前 で再追加した場合、統合を行うときに問題が発生する可能性があります。 以前は、移動したファイルを統合、解決、および送信した後に、再追加されたファイルを 統合することができました。 再追加されたファイルは、移動されたファイルと統合され、他のすべての統合が解決され 、すべての解決が一緒に送信された後に解決されるようになりました。 構成可能変数ビットマスク dm.integ.tweaks に値 32 を設定できるようになりました ( デフォルト値:0)。 dm.integ.tweaks の値 32 (例: 0x20 または 0b100000) が設定された場合、再追加され たファイルは、 対応する移動したファイルが統合、解決、送信された後にのみ統合されます。値 32 が設 定されていない場合、 再追加されたファイルは、対応する移動されたファイルと共に統合され、解決されます。 ビットマスクの他のビットを設定する動作は、値32に影響されないことに注意してくださ い。 #2091268 (Job #105473) ** *** **** 中間ファイルに関する詳しい情報は、上流サーバーに送信され、route.csv構造化ログに 記録されます。 #2091097 (Job #105182) ** 同じクライアントワークスペースから実行されるコマンドのリビジョン指定子で、パーテ ィション指定と読み取り専用のクライアント名が使用できるようになりました。 例:p4 -c client-name files //...@client-name #2087184 (Job #105571) ** p4 verify -z コードは、アーカイブパス上の重複を排除する前に、一致するリビジョン を全てソートしていました。 このソートは、btree ルックアップに置き換えられて、重複を排除するようになりました 。 メモリ使用量を減らし、バッチ (-b) オプションを指定できるようにしました。 #2079569 (Job #105468) ** *** **** サーバー、プロキシ、ブローカーは、完全なSSL証明書チェーンをクライアントに送信で きるようになりました。 これは、複数の証明書がcertificate.txtに含まれる場合に自動的に起こります。チェー ン証明書は、 エンドエンティティ証明書に続くものでなければなりません。 #2077542 (Job #105387) * ** *** **** 新しいクライアント側の構成可能変数である ssl.client.tls.version.max と ssl.clien t.tls.version.min は、 クライアントが受け入れる TLS バージョン(デフォルトは TLS 1.2 と 1.3) を制御し ます。 明示的に設定されていない場合は、後方互換性のために ssl.tls.version.min と ssl.tl s.version.max を明示的に設定すると、クライアント接続に適用されます。 どちらの構成可能変数も、サーバー、プロキシ、ブローカーなど、アップストリーム (ク ライアントサイド) とダウンストリーム (サーバーとサーバー) の両方の接続が行われる 場所で使用することができます。 #2074554 (Job #105285) ** ライセンスは、IP アドレスと FQDN に加えて、MAC アドレスに対して発行できるように なりました。 #2073209 (Jobs #95622, #102195) ** p4 verify に新しいオプション --only [ MISSING | BAD ] が追加され、報告されるエラ ーを制限できるようになりました。 特に、--only MISSING は高価なダイジェスト計算を避けることができ、レプリカ上で見 つからないアーカイブを転送するために使用する p4 verify -t (--only MISSING) のコールを高速化することができます。 #2069250 (Jobs #78168, #105718) ** p4 pull -l -j -v をレプリカに対して実行すると、上流サーバーがまだ配信していない ジャーナルの総バイト数を報告するようになりました (複数のジャーナルローテーションにまたがる可能性があります)。 新しい rpl.track.behind 構成可能変数を 1 以上に設定すると、メタデータ・プルスレ ッドが遅延データを要求し、'rpl が 1 以上に設定されたときに、 リアルタイム・パフォーマンス・カウンターで表示したりログに記録したりするようにな りました。 rpl.track.behind の変更はレプリケーションが再開されるまで適用されませんので、サ ーバーの再起動を推奨します。 #2065650 (Job #91177) ** p4 obliterate を report モードで実行した場合、削除するアーカイブされたリビジョン の数を含めるようになりました。 -A フラグがない場合、無視したアーカイブされたリビジョンの数を報告します。 #2051466 (Job #104797) ** レプリカは、より多くの場合において、不正な lbr.replication の設定から保護するよ うになりました。 lbr.replication が readonly または cache に設定されている場合、非リモート、非ア ーカイブディポのアーカイブがコミットサーバーと共有されていると、 レプリカはレプリケーションを拒否するようになりました。lbr.replication が shared に設定されている場合、非リモート、非アーカイブディポのアーカイブは、 すべてコミットサーバと共有されなければなりません。 #2045672 (Job #74704) * この変更により、ユーザーはすべてのテーブルではなく、1つまたは複数の選択されたテ ーブルに対して p4d -xv を実行することができるようになりました。 #2045571 (Job #85778) ** 新しい構成可能変数 dm.resolve.ignoredeleted が追加されました。ブランチAでファイル を削除してブランチBでは削除しなかった場合、ブランチBを ブランチAにマージすると衝突が発生します。 しかし、この状態でp4 resolve -asコマンドを 実行しても、衝突を解決することはできませんでした。 ただし、dm.resolve.ignoredeletedの値を「1」に設定して p4 resolve -asコマンドを 実行すると、ブランチA内のファイル削除が優先されるため、衝突が解決されるようになります。 #2021125 (Job #102531) ** p4 graph log に -P オプションを追加し、パスで出力を制限できるようにしました。 #2015040 (Job #103743) * コマンドラインクライアントは、設定ファイルの読み込みをより少なくするようになりま した。 #2016164 (Job #103457) ** Repoの仕様に、gconnがミラーリング属性を保存するために使用する4つの新しいフィール ドを追加しました。 これらの4つのフィールドは、gconnを通してミラーリングされたRepoのSecretToken、Sta tus、ExcludedBranches、HideFetchUrlのためのものです。 #2012864 (Job #64164) ** サーバ起動時のエラーは、設定されたログだけでなく、標準エラーにも報告されるように なりました。 #2310299 (Job #110633) ** コミットサーバーから最小限のネットワーク遅延で離れたエッジサーバーで実行する場合 、グローバルファイルまたは排他的にロックされたファイルを 含む多くのファイル引数を持つ p4 reopen のパフォーマンスが改善されました。 特にエッジサーバーで実行した場合のパフォーマンスが向上しました。 #2309511 (Job #111546) * ** *** **** OpenSSL が 1.1.1q にアップグレードされました。 #2308882 (Job #109972) ** p4 fstat は、コミット/エッジ環境内の任意のサーバーに対して実行された場合、 エッジサーバー上の排他ロックを正しく報告するようになりました。 #2307381 (Job #105291) ** p4 user -d -F または p4 group -d -F を使用して保護テーブルのエントリを削除すると 、インラインコメントが削除され、 コメントが不正にシフトされなくなりました。 #2306883 (Job #111182) ** p4 fstat -L をグラフディポのあるサーバーに対して実行しても、サーバーはもうクラッ シュしません。 #2304740 (Job #110978) ** p4 protect は、所有者の sub-protections spec の Path フィールドが提供された引数 と一致するかどうかを検証するようになりました。 #2303315 (Job #111120, #111121, #111123, #111126) ** 連携環境において、エッジサーバーがバージョン 2020.2 以上で、アップストリームサー バーがバージョン 2020.1 以下の場合、 Stream ParentView 機能が無効になりました。 #2300409 (Job #108003) ** Glibc 2.34 以上を使用する Linux ディストリビューションで動作するように移植されま した。 #2298782 (Job #108541) ** まれに、ディポマッピングロジックの一部が無効になることがありました。このようなこ とが起こらないように、ログメッセージが書かれるようになりました。 #2297006 (Job #050785, #110843) ** *** プロキシサーバー上の p4 -ztag info は、プロキシキャッシュのルートディレクトリと 正しいプロキシルートディレクトリを表示するようになりました。 #2296462 (Job #110359) ** WLIST カスタム仕様フィールドのすべての行が、先頭のタブで正しくフォーマットされて いることを確認します。 #2294478 (Job #110708) ** LDAP 認証されたユーザーのための p4 login は、そのユーザーがデータベースに保存さ れた期限切れのパスワードを持っている場合、 パスワード期限切れのメッセージを報告しなくなりました。 #2272546 (Job #109910) ** Commit サーバーが 2020.2 より前のバージョンで実行されている場合、shelve promotio n 操作で保留アーカイブファイルの新しいコピーを 不必要に作成することはなくなりました。 #2271352 (Job #110050) ** lbr.replication が shared に設定されている場合、commit サーバー上で p4 storage - v オペレーションを実行しても、 shelve オペレーション中に未拡張ダイジェストが db.storagesh テーブルに格納される ため、ktext ファイルのファイルサイズが BAD! に なることはなくなりました。 #2271157 (Job #108415) ** 同じワークスペースから保留処理中のエッジサーバーからファイルをグローバル ロック しても、保留処理によってエッジサーバー上のロックが解除されなくなりました。 #2270670 (Job #110049) ** lbr.replication が shared に設定されている場合、エッジのサブミット操作でエッジサ ーバー上の既存の保留アーカイブファイルが削除されなくなりました。 #2269255 (Job #109847) ** p4 unshelve コマンドを別のクライアントで実行すると、"tampered with after resolve " で失敗することがありました。 この変更により、この問題が修正されました。 #2268893 (Job #109848) ** lbr.replication が shared に設定されている場合、保留操作は Edge サーバー上の既存 の保留アーカイブファイルを削除したり上書きしたりしなくなりました。 #2263614 (Job #109150) ** アーカイブファイルへの複数の参照が存在する場合、 p4 restore がライブラリアン削除 エラーで失敗する可能性がありました。 この変更により、この問題が修正されました。 #2261734 (Job #109709) ** エッジサーバーで大量の排他的ロック (+l) ファイルを開くことが、はるかに効率的にな りました。 #2245071 (Job #109370) ** エッジサーバー上で p4 submit -e を実行すると、既存のアーカイブが他の保留によって 共有されている場合にのみ新しいアーカイブが作成されます。 #2244754 (Job #109435) ** 保留プロモーションは、2020.2 へのアップグレード前に p4 shelve で作成されたアーカ イブファイルのうち、まだ他の保留にあるチェンジリストが使用しているものを 上書きしなくなりました。 #2243783 (Job #109343) ** バックグランドサブミットは、2020.2 へのアップグレード前に p4 shelve で作成された アーカイブファイルを上書きしてしまう場合、 標準の edge-submit にフォールバックするようになり、それは 2020.2 へのアップグレ ードでもまだ他の保留のされたものが使っ ているものである。 2021.2 Patch 3 (2021.1/2242478)のバグ修正 ------------------------ #2241523 (Job #109210) ** p4 lock はタグ付きモードでテキストメッセージを返さないようになりました。 #2237120 (Job #108847) ** p4 submit は、2020.2 へのアップグレード前に p4 shelve で作成され、 保留のされた他の変更リストがまだ使用しているアーカイブファイルを上書きしなくなり ました。 #2234451 (Job #108864) ** タグ付き p4 groups -v が db.user に対してロックレスであることを確実にします。 #2232268 (Job #107091) ** 2019.2 コミットサーバーに接続された 2020.1 エッジサーバーからの p4 stream -o を 許可します。 #2231066 (Job #108947) ** エッジサーバーに対して実行される p4 switch は、保留に失敗した場合でも、コミット サーバーに stash の変更を正しく伝播するようになりました。 #2230131 (Job #108026) * クライアントは、転送サイズが 1KB 未満のファイルについて、ファイルごとの進行状況 情報を受信できるようになりました。 #2230131 (Job #108548, #108027) ** サーバからのファイル転送の進捗情報は、クライアントのファイルシステム上のファイル の最終サイズではなく、転送されるファイルサイズを正しく表すようになりました。 この値は、アーカイブファイルを指定することによって見つかります。これは、ディポが デフォルトでない場所にマップされている場合でも動作するようになりました。 #2228624 (Job #96885) ** 同じワークスペースで並列サブミットとファイルの返却を同時に行うと、clientEntity/0 ,d serverlock ディレクトリの検索パーミッションがオフになることがありました。 これは修正されました。 #2226025 (Job #108547) ** p4 verify -R は、'Map フィールドにデフォルトでないパス変換を持つディポでアーカイ ブの検索に失敗しなくなりました。 #2222577 (Job #108022) ** ストレージのアップグレードリクエストは、キーワードリビジョンに対するダイジェスト を計算しなくなりました。 #2225051 (Job #108613) ** カテゴリをログに記録せずに、-v コマンドラインオプションを数字に設定してサーバを 起動しても、クラッシュしなくなりました。 #2224926 (Job #108934) * ** *** **** SSL ハンドシェイクタイムアウトの構成可能変数 ssl.client.timeout は、より短い net .maxwait 構成可能変数値によって上書きされなくなりました。 #2221273 (Job #108767) ** db.change/db.desc 間の p4d -xx 整合性チェックは、切り詰められた記述と完全な記述 の間の不一致を正しく検出するようになりました。 #2231955 (Job #108603, #109073) ** ストリーム仕様の変更が変更リストにあり、変更リストのタイプが制限されているか、構 成可能変数 defaultChangeType が restricted に設定されている場合、 リストにアクセスできないユーザーが変更中のストリーム仕様を見たり、変更リスト中の 変更を見たり、読み込みアクセスしかできないユーザーが変更の説明を読むことができま した。 これは修正されました。 #2208530 (Job #108045) ** まれに、内部コンテキスト構造体が NULL になることがありました。このエラー状態は捕 捉され報告されるようになりました。 #2206656 (Job #108503) ** エッジサーバーと追加の中間サーバーが関与する場合、特定のコマンドのチケット検証は 失敗しました。これは修正されました。 #2203663 (Job #107572) ** コミットサーバから p4 sync または p4 print を実行すると、要求されたアーカイブフ ァイルがバックグラウンドでのサブミット中に元のエッジサーバからまだフェッチされて いない場合、 ライブラリアンエラーが報告されることがありました。これは、これらのアーカイブがオ ンデマンドでフェッチされるようにすることで修正されました。 #2197055 (Job #108166) ** アップグレード後に p4 upgrades を使用すると、ロックエラー "Locking failure: db.c ounters locked after db.upgrades!" が、 ログファイルに出力される問題が修正されました。 #2194459 (Job #107762) ** レプリケーションを待っているコマンドが、アップストリームサーバのジャーナルローテ ーションによって極端に遅延することはなくなりました。 #2185179 (Job #105430) ** マージ解決で、マージの 1 部分の最後の 2 行が正しく結合されないことがありました。 これは、ベース、ソース、またはターゲットのファイルの最終行に行末文字がない場合に 発生する可能性があります。 この問題は、デフォルトで 0 に設定されている新しい構成可能変数 merge.dl.endeol を 1 に設定すると解決されます。 ただし、構成可能変数を設定しなくても正しく解決される場合があり、手動で解決しなけ ればならない競合が登録されることがあります。 #2187671 (Job #101618) ** fstat -Rs -e -Ol @= コマンドは、削除、または移動/削除の ために開かれたファイルのような、 削除された保留ファイルのダイジェストを報告することがありました。fstat コマンドの このバージョンは、削除されたファイルのダイジェストを報告しないように修正されまし た。 #2184060 (Job #106310, #90948) ** pull -u --batch コマンドは、転送エラーが発生した時にそのバッチを過度に再試行し、 pull スレッドが他のアーカイブを要求するために移動するのではなく、ストールする可 能性がありました。 これは、2019.2 で接続に失敗した後に pull -u --batch が再開できるように修正された ことによるリグレッションが原因でした。 これらのバグは両方とも修正されました。 2021.2 Patch 2 (2021.1/2179737)のバグ修正 ------------------------ #2176143 (Job #107796) * ** *** **** OpenSSLが1.1.1kにアップグレードされました。 #2175270 (Job #107736) ** OpenLDAP が 2.4.59 にアップグレードされました。 #2175091 (Job #107513) * ** SQLite (拡張版) が 3.36.0 にアップグレードされました。 #2173869 (Job #105082) * ** cURL (拡張機能用) が 7.75.0 にアップグレードされました。 #2173868 (Job #105082) * ** Lua-cURLv3 (拡張機能用) が 0.3.12 にアップグレードされました。 #2173867 (Job #105082) * ** Lua (拡張機能用) が 5.3.6 にアップグレードされました。 #2170623 (Job #107537) **** サンプル設定ファイルに Broker のサーバ ID を設定する例が追加されました。 #2165146 (Job #107505) ** Cyrus-SASL に CVE-2019-19906 に対応するパッチが適用されました。 #2160135 (Job #107283) ** p4 unload -p は、コミットサーバーで重複排除された保留ファイルのプロモートに失敗 しなくなりました。 #2158786 (Job #106906) ** ストリームスペックパーミッションが存在しない場合にストリームスペックの提出を妨げ ていたバグを修正しました。 任意の場所にOPENパーミッションがあれば、ストリーム仕様の提出が可能になりました。 いずれかのストリームスペックパーミッションが存在する場合、特定のストリームスペッ クに対してストリームスペックパーミッションが必要です。 #2158777 (Job #107119) ** 親レスタスクストリームへの統合を妨げるバグを修正しました。 #2158291 (Job #106143) ** コミットサーバーとエッジサーバーの間に遅延があり、コミットサーバーへのアーカイブ の転送が遅い場合、待機サーバーからコミットサーバーへの pull -u スレッドが、 昇格した保留の変更からのアーカイブの転送に失敗する場合がありました。この問題は、 スタンバイサーバーの pull -u スレッドが見つからないアーカイブの 転送を再試行できるようにすることで解決されました。 #2151124 (Job #104080) ** p4 shelve は、ktext タイプのファイルを正しく重複排除するようになりました。 #2153990 (Job #107209) ** ファイルを移動し、読み込み、統合した後に、読み込んだファイルの将来の統合が統合先 の移動したファイルをターゲットにするという統合の問題を修正しました。 #2152932 (Job #107115) ** バックグラウンド・スレッドでのジャーナル・コピー中に発生した、スタンバイまたはフ ォワーディング・スタンバイのサーバー・ログに報告されるエラーは、エラー・メッセー ジの一部が 欠落しないようになりました。 #2149798 (Bug #106795) ** ソースファイルが統合された後、ソースファイルのリビジョンが以前の統合範囲内で取り 消され、後の統合の試行ですべてのリビジョンがすでに統合されたと主張する、 取り消しに関する問題が修正されました。と主張します。 構成可能変数 dm.integ.undo と、統合オプション p4 integ -Ru は、以前の統合範囲にない統合クレジットのみを 作成し、この問題を解決します。 #2141256 (Job #106707) ** 20.2 以前のサーバーで作成された保留リビジョンに対して、変更番号の降順で p4 submi t -e を複数回実行すると、間違ってアーカイブを上書きしてしまうことがありました。 これは修正されました。 #2145693 (Job #106998) ** p4d -xx は db.rev/db.change テーブルペアの整合性チェックで、より一貫したプレース ホルダの変更レコードを作成するようになりました。 #2142383 (Job #102776, #106796) ** p4 help resolve を更新し、自動マージによる解決 ('p4 resolve -am') と手動による a ccept merge ('p4 resolve と am オプションを選択) を区別するようにしました。 自動マージによる解決は、すべての統合がマージされることを保証するものではなく、選 択が自動化され、最適なときにマージが選択されることを保証するだけです。 #2141258 (Job #106645) ** p4 storage -d -y は、アーカイブの削除や移動中にすべてのテーブルロックを解放する ようになりました。 #2131210 (Job #106665) ** ライセンスサーバーのRepo数制限は、ライセンスで特に上書きされない限り、無制限にな りました。 #2133102 (Job #106380) ** p4 verify -z で見つからないアーカイブが報告されないことがありました。これは修正 されました。 #2131902 (Job #105391) ** ストレージテーブルを使用したアーカイブの検証のパフォーマンスが改善されました。 ('p4 verify -Z', p4 storage -v') #2131366 (Job #106620) ** アップグレードステップの状態をアップストリームサーバーに問い合わせる際に発生する エラーが、ダウンストリームに正しく伝搬されるようになりました。 #2132003 (Job #106579) ** ライセンスのない環境下で作成できるRepo数の上限は 3 に変更されました。 #2131954 (Job #106209) ** レプリカサーバに対して実行された p4 license -u コマンドは、コミットサーバに転送 され、認証された応答が得られるようになりました。 レプリカにインストールされているライセンスを照会するには、 p4 license -u -l を実 行してください。 #2130925 (Job #106610) ** 昇格された保留のされた変更に対して p4 submit -e -b を実行すると、その変更に関連 するアーカイブがコミットサーバーで失われることがありました。 これは修正されました。 #2129713 (Job #106628) ** 通常は発生しない特定の条件下で、integrate 用にオープンされているが解決レコードが ないファイルが、サブミット時にサーバーのクラッシュの原因となることがありました。 これは修正されました。 #2128705 (Job #104527) ** ワイルドカードが埋め込まれたストリームビューの誤った生成に関する修正。ストリーム がメインラインの孫で、1 つのパラメータのインポートパスを持ち、共有パスががある場 合、 ワイルドカードが埋め込まれた最初の共有パスに対して生成されるビューが正しくありま せんでした。この問題は、LinuxとWindowsのプラットフォームでのみ発生しました。 #2118652 (Job #106130) * 並列同期用のクライアント側スレッドで文字セットコンバータを共有しなくなり、ユニコ ードタイプのファイルの変換中にレース状態が発生し、 ワークスペース内のファイルが破損するのを防止します。 #2116302 (Job #104119) ** ワイルドカードを埋め込んだ共有ストリームパスにファイルがある場合に、仮想ストリー ム内のファイルを開いて送信できるように修正されました。 #2110827 (Job #105817) ** p4 extension --run コマンドは、デフォルトでレプリカからコミットサーバーに転送さ れなくなりました。 レプリカがこのコマンドをデフォルトで処理するようになりました 。 コマンドを転送したい拡張モジュールは、RunCommand コールバックから 2 番目の boole an を返します。 #2102800 (Job #105889) ** GitFusion で使用されている client -x 機能が、高い同時実行シナリオでサーバーをク ラッシュさせないようになりました。 #2099787 (Job #105663, #105664) ** サブミットされた変更リストの記述のタグ付き出力は、変更リストにストリーム仕様が含 まれていて、そのストリームが削除されている場合、 "streamDeleted" タグを含むようになりました。同様に、もしストリームが変更 N の後 に削除されたなら、次のようになります。 p4 stream -o //streampath@N はこのようなエラーメッセージを表示します。 ストリーム //streampath は変更 N の後に削除されました #2095459 (Job #97388) ** 大量の移動ファイルを含む DVCS フェッチでのパフォーマンスが改善されました。 #2088944 (Job #105655) ** p4 obliterate -T -p -y は矛盾したストレージレコードを作成することがありました。 これは修正されました。 #2077935 (Job #103120) ** p4 help の maxlocktime, maxopenfiles, maxresults, maxscanrows を更新し、 これらの制限の対象となるコマンドを正しく反映するようにしました。 #2073801 (Job #94424) ** p4 monitor show は、高い同時実行性が発生しても、経過時間に負の秒数を表示しないよ うになりました。 #2073742 (Job #105077) ** p4 print -o dir/... files/... は、指定されたワイルドカードは確かに互換性がありま すが、 そのパスに異なるワイルドカードパターンを持つエントリーが保護テーブルまたはクライ アントのビューに存在する場合、 "incompatible wildcards" エラーで失敗しないようになりました。 #2071513 (Job #105126, #105128) ** p4 storage -d コマンドは、ストレージレコードキーに対してゼロ参照カウントレコード の複数のマッチを見つけると、 エラーを報告して終了しました。これは、そのようなレコードをすべて削除するように修 正されました。 #2067210 (Job #105117) ** p4 switch で作成された保留に対する変更リストの説明の表現を改善しました。 #2062207 (Job #104928) ** 2020.2 以前のコミットサーバーとアーカイブを共有しているエッジサーバーからの保留 昇格が期待通りに動作するようになりました。 #2054133 (Job #104525) ** あるユーザーに対して大量のグラフRepoとグラフパーミッションがある場合の p4 depots のパフォーマンスを改善しました。 数千のRepoとパーミッションのエントリーがある場合、'p4 depots は 5 秒以上かかって いましたが、今はほんの数秒で完了します。 #2047301 (Job #104689) ** lbr.replication=ondemand を指定した Edge サーバーは、アーカイブがコミットサーバ ーと共有されていない場合、 変更の送信に失敗しなくなりました。 #2046839 (Job #104687) ** コミットサーバーと共有されているアーカイブをチェックするときに、レプリカが中間サ ーバーを考慮するようになりました。 #2041755 (Job #104031) ** graph lfs-unlock では、アンロックされるファイルに対するRepoの権限チェックが行わ れていませんでした。 この問題は修正され、現在は非管理ユーザーがアンロックするためにRepoの読み取り権限 (またはそれ以上)が必要です。 管理者ユーザーは -f オプションでロック解除できます。 #2040061 (Job #104332, #104452) ** サーバーロックのクリーンアップのアップグレード処理で、異なるバケット番号で作成さ れたサーバーロックやエスケープされたサーバーロック名がクリーンアップされない問題 がありました。 これは修正されました。 #2031377 (Job #96144) ** mandatoryスタンバイサーバの p4 failover で -s オプションを使用すると 、 この serverID 値がフェイルオーバーコマンドを実行しているスタンバイサーバによって ジャーナルコピーされているマスターの serverID と比較されることがあります。 これらの値が一致しない場合、フェイルオーバーはエラーとなり失敗します。 #2026234 (Job #100022) ** p4 add'が除外マッピングに正しく対応しないことがありました。ビューの除外マッピン グに一致しないにもかかわらず、一部のファイルが除外されていました。 この変更により、この問題が修正されました。 #2019261 (Job #84701) * 警告は、aliases コマンドで後続のコマンドを実行することを妨げなくなりました。 -------------------------------------------------------------------------- 2020.2 (2020.2/2042415)主な新機能 ------------------ #2006716 (Job #102377) ** ストリーム仕様に新しい ParentView フィールドが追加され、'inherit または noinheri t という値を取ることができるようになりました。 ParentViewフィールドは、ストリームがその親からビューを継承するかどうかを定義しま す。 ParentViewがinheritに設定されている場合、Paths、Remapped、Ignoredフィールドから 作成されるクライアントビューとブランチビューは、 ストリームの各先祖の対応するフィールドにも依存することになります。 ストリームは常にこのinheritの機能を持っています。 ParentViewがnoinheritに設定さ れている場合、クライアントビューとブランチビューはストリームの先祖の影響を受けま せん。 ストリーム自身のPaths、Remapped、Ignoredフィールドのみがビューに影響を与えます。 これは、リリースストリームで特に有用です。 メインラインの先祖に依存するビューは、先祖のパスが変更されるとビルドが中断される 可能性があります。 p4 stream --parentview noinherit は、ParentViewをnoinheritにしたストリームを作成 するために使用します。 既存のストリームをnoinherit ParentViewに変換するには、 p4 stream parentview --no inherit'を使用します。 タスクストリームと仮想ストリームはnoinherit ParentViewに変換することができません 。 #1978496 (Job #102958) ** 新しい保留されたファイルは、サーバーのアーカイブで重複排除されるようになりました 。既存の保留ファイルと同じ内容の新しい保留ファイルは、 新しいアーカイブファイルを作成せず、代わりに既存のアーカイブファイルを参照します (例外的なシナリオはほとんどありません)。 新しい保留ファイルのアーカイブには、追加の数値サフィックスが追加され、アーカイブ を共有する棚の保留のコンテンツの上書きを避けるために使用されるようになりました。 #1892248 (Job #99170) ** ストリーム仕様は、あるストリームから別のストリームに統合、マージ、またはコピーで きるようになりました。 ストリーム仕様が統合/マージ/コピーされると、Paths、Remapped、Ignored フィールド 、および Openable プロパティが propagate である 任意のフィールドがターゲット仕様に統合/マージ/コピーされます。 p4 istat はストリーム仕様の統合状態を表示し、'p4 streamlog はストリーム仕様の統 合と改訂の履歴を表示するようになりました。 構成可能変数 dm.integ.streamspec は、ストリーム仕様の統合を有効/無効にします。 この構成可能変数値には3つあります。 0: ストリーム仕様の統合は許可されません。 1: ParentViews が noinherit のターゲットストリームに対してのみ、ストリーム仕様の 統合を許可します。 2: すべてのストリームでストリーム仕様の統合を許可する。 dm.integ.streamspec のデフォルト値は 1 です。 dm.integ.streamspec の変更は、すべての新しいコマンドに適用され、サーバーの再起動 は必要ありません。 2020.2 (2020.2/2042415)マイナーな新機能 ------------------ #2009105 (Job #103382) ** 2019.2以降のアップグレードステップはバックグラウンドで実行されるようになりました 。 これにより、アップグレード中のサーバーの可用性とレプリケーションパフォーマンスが 改善される可能性があります。 #2004498 (Job #103106) *** プロキシサーバーは、P4PROOT環境変数を設定するか、 p4p -R オプションを使用する ことで、データベースに異なるパスを使用するように設定できるようになりました。 デフォルトでは、P4PROOTはP4PCACHEと同じで、データベースとアーカイブは同じパスの 下に存在します。 #2006869 (Job #99893) ** サーバーサイドの拡張機能に、ライントレース用のデバッグオプションが追加されました 。 これは、インスタンス構成設定の ExtDebug: tracing で設定します。 #2002566 (Job #96665) ** プレビューモードと非プレビューモードの両方で、フェイルオーバープロセスのソースと ターゲットに関する適切な詳細がコマンドの開始時に表示されるようになりました。 #2000621 (Job #102212) ** 以前は、 submit.allowbgtransfer が設定されていない場合や、エッジサーバーでないサ ーバーからこのコマンドを実行すると、 p4 submit -b が失敗していました。今回の変更で submit は成功し、これらのシナリオ ではデフォルトの submit アーカイブ転送の動作にフォールバックするようになりました 。 #2000122 (Job #103386) ** 新しいコマンド p4 upgrades が追加され、サーバーのアップグレードの状態を報告する ようになりました。 #1999718 (Job #96207) ** マスターが参加していないときに必須のスタンバイ・サーバーからフェイルオーバーする には、'-s を指定する必要がありました。 このシナリオのフェイルオーバーでは、コマンドラインで'-s'が指定されていない場合、 スタンバイサーバのスペックのReplicatingFromフィールドで マスターのserverIDをチェックするようになりました。 #1997165 (Job #102264) ** Perforce p4diag ツールは、Perforce Windows サービスの開始時に自動的に起動するよ うになりました。 このためには、p4diag.exe が p4s.exe と同じディレクトリにあり、サービスの P4DIAGL OG 環境変数に p4diag ログファイル名が設定されている必要があります。 (例: p4 set -s Perforce P4DIAGLOG=c:\p4diag_log.txt') 詳細は、p4diag autostart KB article を参照してください。 https://community.perf orce.com/s/article/17317 #1995020 (Job #103348) ** 2020.2 リリースから、各リリースの最初のアップグレードステップは InstallationRunn ing20xx.y になります。 このアップグレードステップは、必要なリリースを実行している内部サーバーに依存する 機能を外部サーバーが確実に使用できるようにするために、 内部で使用されます。 #1992939 (Job #96786) ** フェイルオーバー・プロセスの一部には、ジャーナル・コピーとプル・スレッドの停止が 含まれます。フェイルオーバー・プロセスが失敗した場合、 これらのスレッドを手動で再起動する必要がありました。今回、startup.X 構成可能変数 を使用して設定された pull -L、 pull -u または journalcopy スレッドは、 フェイルオーバーが失敗したときに自動的に再開されるようになりました。 #1992723 (Job #103145) ** アーカイブディポのアーカイブファイルは、アーカイブを取得するレプリカの rpl.pull. archivedepots を 1 に設定することでレプリカサーバに伝搬させることができるように なりました。 rpl.pull.archivedepots の変更は、レプリケーションが再起動するまで適用されません ので、サーバーの再起動を推奨します。 #1990828 (Job #102935, #102936) ** 新しい構成可能変数の閾値 db.monitor.addthresh (ミリ秒単位で指定)より速く完了す る接続は、モニターレベル1または2のdb.monitorテーブルに追加されません。 まだ閾値を越えていないが、スキーマ内のテーブルのロック待ちでブロックされる接続は 、ロック待ちの直前にdb.monitorテーブルに追加されます。 db.monitor.addthresh への変更は、すべての新しいコマンドに適用されます。サーバー の再起動は必要ありません。 #1988495 (Job #101397) ** p4d -xxオプションは、もはやundocではなく、サポートされるようになりました。このオ プションは p4d -h で文書化されています。 生成された journal fix を再生する前に、必ずサポートに相談してください。 #1985598 (Job #100934) ** p4 streamlog は、ストリーム仕様の統合履歴を報告するようになりました。 #1978985 (Job #100259) ** 新しい構成可能変数 dm.repo.unpack は、グラフディポへのパックファイルの処理方法を 制御し、blob を個々のルーズオブジェクトファイルに解凍するためのオプションを提供 します。 3つのオプションがあります: dm.repo.unpack=0 (パックファイルを保持する。古いデフォルト値) dm.repo.unpack=1 (更新時に解凍、新デフォルト値) dm.repo.unpack=2 (すべてを解凍) デフォルトの動作がオプション0から1に変更されたことに注意してください。 dm.repo.unpack'の変更は新しいインポートに適用され、サーバーの再起動は必要ありま せん。 #1966440 (Job #102381) ** ストリーム仕様がコメント(##接頭辞)をサポートするようになりました。これは、Paths 、Remapped、Ignoredフィールドに追加でき、 1行でもパスや無視する行に付加することもできます。 Paths: ##AAAA share ... ##BBBB ##CCCC Remapped: ##DDDD remapped/... newlevel/remapped/... ##EEEE ##FFFF Ignored: ##GGGG .o ##HHH ##IIII コメントをサポートできないクライアントは、APIレベルを88以下に設定し(例:'-Zapi= 88')、 p4 stream -o'でコメントをすべて削除することができます。 この方法でコメントを無効にすると、クライアントは、すでにコメントを使用しているス トリーム仕様の更新を許可されるようになる。 #1961430 (Job #94996) ** p4 tag コマンドに、ラベルの自動作成を防止するための --exists オプションを追加し ました。この変更により、ラベルが存在しない場合、 --existsを指定した'p4 tag'は失敗し、ラベルが存在しないことを示すようになりました 。 #1953906 (Job #102103) ** p4 repo --create-index では、インデックスの作成を高速化するために、3つ のフィールド(size, type, lfsOID)を未設定にします。 これらの値は、後で必要になったときにいつでも、レイジーローディングのステップを通 じてによって、これらの値は収集され、graphIndex テーブルの関連レコードに更新され ます。 #1943129 (Job #96807) ** * 拡張機能が署名されるようになり、誰が書いたか、変更されたかについて、より信頼でき るようになりました。 署名された拡張機能は、新しい server.extensions.allow.admin 構成可能変数が 0 に設 定されていない限り、管理者ユーザーによってインストールされる可能性があります。 すべての拡張機能に署名が必要な場合は、'server.extensions.allow.unsigned 構成可能 変数を 0 に設定できます (これは将来のリリースでデフォルトになる予定です)。 この構成可能変数を設定しても、スーパーユーザーは --allow-unsigned フラグで署名な しの拡張機能を強制的にインストールすることが可能です。 Perforce Software社の公開鍵はあらかじめインストールされています。他のソースから の署名付き拡張機能を受け入れるには、それらのソースの公開鍵をインストールする必要 があります。 server.extensions.allow.admin と server.extensions.allow.unsigned の変更は、新し い拡張機能コマンドに適用され、サーバーの再起動は必要ありません。 #1926194 (Job #101185, #101196) ** p4 -ztag は、同期されたグラフデポに対して、一致するタグを報告するようになりまし た。 一致するタグと、DETACHED_HEAD状態でない場合は、追跡中のブランチの現在のshaも報告 されるようになりました。 #1924457 (Job #100874) ** グラフディポの p4 -ztag diff2 は、タイプフィールドを表示するようになりました。 2020.2 Patch 8 (2020.2/2274883)のバグ修正 ------------------------ #2272548 (Job #109910) ** Commit サーバーが 2020.2 より前のバージョンで動作している場合、保留プロモーショ ン操作は保留アーカイブファイルの 新しいコピーを不必要に作成しないようになりました。 #2271358 (Job #110050) ** Commit サーバーで p4 storage -v オペレーションを実行しても、shelve オペレーショ ン中に db.storagesh テーブルに展開されていないダイジェストが格納されるため、 ktext ファイルのファイルサイズが BAD!にならないようになりました。 #2270671 (Job #110049) ** lbr.replication が shared に設定されている場合、Edgeサーバからのサブミット操作で Edgeサーバー上の既存の保留アーカイブファイルが削除されなくなりました。 #2270128 (Job #109709) ** エッジサーバー上で大量の排他的ロック (+l) ファイルを開くことが、はるかに効率的に なりました。 #2269251 (Job #109847) ** p4 unshelve コマンドを別のクライアントから実行すると、"tampered with after resol ve" で失敗することがありました。 この変更により、この問題が修正されました。 #2268894 (Job #109848) ** lbr.replication が shared に設定されている場合、Shelve 操作は、Edgeサーバー上の 既存の保留アーカイブファイルを削除または上書きしなくなりました。 #2262922 (Job #109150) ** アーカイブファイルへの複数の参照が存在する場合、'p4 restore がライブラリアン削除 エラーで失敗する可能性がありました。 この変更により、この問題が修正されました。 #2261723 (Job #108415) ** 同じワークスペースから保留処理中のエッジサーバからのファイルをグローバルにロック しても、保留処理によってエッジサーバのロックが削除されることはなくなりました。 #2254702 (Job #109616) ** 古いバージョンのデータベース レコードを含むジャーナルをレプリケートすると、コミ ット サーバがクラッシュすることがありました。 これは修正されました。 #2248386 (Job #108573) ** エッジサーバー上の p4 reopen によるグローバルにロックされたファイルの変更、ユー ザー、およびタイプの更新は、コミットサーバー上で正しく更新されるようになりました 。 #2248386 (Job #108553) ** 現在のワークスペースですでにロックされているファイルに対して エッジサーバー上で p4 lock -g を実行しても、エラーが報告され なくなりました。 #2247473 (Job #101504, #105052) ** ファイルハンドルは、トリガープロセスによって継承されなくなり ました。 #2245072 (Job #109370) ** Edge サーバー上で p4 submit -e を実行すると、既存のアーカイ ブが他の保留によって共有されている場合にのみ新しいアーカ イブが作成されます。 #2244756 (Job #109435) ** 保留プロモーションは、2020.2 へのアップグレード前に p4 s helve で作成されたアーカイブファイルのうち、保留された他 のチェンジリストがまだ使用しているものを上書きしなくなりまし た。 #2244266 (Job #109210) ** p4 lock はタグ付きモードでテキストメッセージを返さないよう になりました。 #2242013 (Job #109343) ** Background submit は、2020.2 へのアップグレード前に p4 shelv e で作成されたアーカイブファイルを上書きしてしまう場合、標準 の edge-submit にフォールバックするようになり、他の shelved changelists でまだ使用されているものがあります。 #2236941 (Job #108847) ** p4 submit は、2020.2 へのアップグレード前に p4 shelve が作成 した、他の保留のされたチェンジリストがまだ使用しているアーカ イブファイルをもう上書きしません。 #2233843 (Job #108864) ** タグ付き p4 groups -v が db.user に対してロックレスであるこ とを確実にするようにしました。 #2232267 (Job #107091) ** 2019.2 コミットサーバーに接続された 2020.1 エッジサーバーか らの p4 stream -o を許可しました。 #2230126 (Job #108026) * クライアントは、転送サイズが 1KB 未満のファイルについて、フ ァイルごとの進行状況情報を受け取ることができるようになりまし た。 #2230126 (Job #108548, #108027) ** サーバーからのファイル転送の進行状況情報は、クライアントのフ ァイルシステム上のファイルの最終サイズではなく、転送されるフ ァイルサイズを正しく表すようになりました。この値は、アーカイ ブファイルを指定することによって見つかります。これは、ディポ がデフォルトでない場所にマップされている場合でも動作するよう になりました。 #2228625 (Job #96885) ** 同じワークスペースで並列サブミットとファイルの返却を同時に行うと、clientEnti ty/0,d serverlock ディレクトリの検索パーミッションがオフにな ることがありました。これは修正されました。 #2225053 (Job #108613) ** カテゴリをログに記録せずに、-v コマンドラインオプションに数 字だけを設定してサーバーを起動しても、クラッシュが発生しなく なりました。 #2224927 (Job #108934) * ** *** **** SSLハンドシェイクタイムアウト構成可能変数 ssl.client.timeout は、より短い net.maxwait 構成可能変数値によって上書きされなく なりました。 #2221454 (Job #108767) ** db.change/db.desc 間の p4d -xx 整合性チェックは、切り詰めら れた記述と完全な記述の間の不一致を正しく検出するようになりま した。 #2220734 (Job #108045) ** 稀なケースとして、内部コンテキスト構造が NULL になることがあ ります。このエラー状態は捕捉され報告されるようになりました。 #2215872 (Job #108541) ** 稀なケースとして、ディポマッピングロジックの一部が無効になる ことがありました。この場合、ログメッセージが書き込まれるよう になりました。 #2206655 (Job #108503) ** エッジサーバーと追加の中間サーバーが関与する場合、特定のコマ ンドの間のチケット検証は失敗しました。これは修正されました。 #2203943 (Job #107572) ** コミットサーバから p4 sync または p4 print を実行すると、要求されたアーカイブフ ァイルがバックグラウンドでのサブミット中に元のエッジサーバからまだフェッチされて いない場合、 ライブラリアンエラーが報告されることがありました。これは、これらのアーカイブがオ ンデマンドでフェッチされるようにすることで修正されました。 #2196580 (Job #108166) ** アップグレード後に p4 upgrades を使用すると、ロックエラー "Locking failure: db.c ounters locked after db.upgrades!" が、 ログファイルに出力される問題が修正されました。 #2194049 (Job #107762) ** レプリケーションを待っているコマンドが、アップストリームサーバのジャーナルローテ ーションによって極端に遅れることはなくなりました。 #2188020 (Job #101618) ** fstat -Rs -e -Ol @= コマンドは、削除や移動/削除のために 開かれたファイルのような、削除されたシェルフファイルのダイジェストを報告すること がありました。 この fstat コマンドのバリエーションは、削除されたファイルのダイジェストを報告し ないように修正されました。 #2184402 (Job #105430) ** マージ解決で、マージの 1 部分の最後の 2 行が正しく結合されないことがありました。 これは、ベース、ソース、またはターゲットのファイルの最終行に行末文字がない場合に 発生する可能性があります。 この問題は、デフォルトで 0 に設定されている新しい設定項目 merge.dl.endeol を 1 に設定すると解決されます。 ただし、構成可能変数を設定しなくても正しく解決される場合があり、手動で解決しなけ ればならない競合が登録されることがあります。 #2183916 (Job #106310, #90948) ** pull -u --batch コマンドは、転送エラーが発生した時にそのバッチを過度に再試行し、 pull スレッドが他のアーカイブを要求するために移動するのではなく、ストールする可 能性がありました。 これは、2019.2 で接続に失敗した後に pull -u --batch が再開できるように修正された ことによるリグレッションが原因でした。 これらのバグは両方とも修正されました。 2020.2 Patch 7 (2020.2/2179691)のバグ修正 ------------------------ #2176143 (Job #107796) * ** *** **** OpenSSLが1.1.1kにアップグレードされました。 #2175273 (Job #107736) ** OpenLDAP が 2.4.59 にアップグレードされました。 #2175090 (Job #107513) * ** SQLite (拡張版) が 3.36.0 にアップグレードされました。 #2174085 (Job #105082) * ** cURL (拡張機能用) が 7.75.0 にアップグレードされました。 #2174083 (Job #105082) * ** Lua-cURLv3 (拡張機能用) が 0.3.12 にアップグレードされました。 #2174082 (Job #105082) * ** Lua (拡張機能用) が 5.3.6 にアップグレードされました。 #2165146 (Job #107505) ** Cyrus-SASL は CVE-2019-19906 に対応するためにパッチを適用しました。 #2160136 (Job #107283) ** p4 unload -p はコミットサーバーで重複排除された保留ファイルのプロモートに失敗し なくなりました。 #2158203 (Job #107119) ** 親レスタスクストリームへの統合を阻害するバグを修正しました。 #2158189 (Job #106906) ** ストリームスペックパーミッションが存在しない場合に、ストリームスペックの提出を妨 げていたバグを修正しました。 どこでも OPEN 権限があれば、ストリーム仕様の提出が可能になりました。 何らかのストリームスペックパーミッションが存在する場合は、特定のストリームスペッ クに対してストリームスペックパーミッションが必要です。 #2157662 (Job #106143) ** コミットサーバとエッジサーバ間に遅延があり、コミットサーバへのアーカイブの転送が 遅い場合、スタンバイサーバからコミットサーバへの pull -u スレッドは、 昇格した保留の変更からのアーカイブの転送に失敗する可能性がありました。この問題は 、スタンバイサーバーの pull -u スレッドが見つからないアーカイブの転送 を再試行できるようにすることで解決されました。 #2156961 (Job #107216) * pshufb 命令を実行できない古いプロセッサは、 compress オプションが設定されたクラ イアント経由でファイルを転送すると、 p4 プログラムをクラッシュさせる可能性があり ました。 これは修正されました。 #2152501 (Job #107115) ** バックグラウンドスレッドでの journalcopy 中に発生した、スタンバイまたはフォワー ディングスタンバイのサーバログに報告されるエラーは、 エラーメッセージの一部が欠落しないようになりました。 #2150938 (Job #104080) ** p4 shelve は、ktext タイプのファイルを正しく重複排除するようになりました。 2020.2 Patch 6 (2020.2/2152297)のバグ修正 ------------------------ #2147436 (Job #106795) ** undoの問題を修正しました。ソースファイルが統合された後、ソースファイルのリビジョ ンが前の統合範囲でundoされ、 後の統合の試みで全てのリビジョンが既に統合されていると主張します。 構成可能変数 dm.integ.undo と統合オプション p4 integ -Ru は、 統合された範囲にない以前の統合に対する統合クレジットのみを作成することで、この問 題を解決します。 #2146810 (Job #99138) ** SSSE3 拡張を実装していない CPU をサポートしました。 このため、古い AMD プロセッサで p4 unzip が失敗することがありました。 #2146464 (Job #106998) ** p4d -xx は db.rev/db.change テーブルペアの整合性チェックの間、より一貫したプレー スホルダの変更レコードを作成するようになりました。 #2141259 (Job #106645) ** p4 storage -d -y は、アーカイブの削除や移動の際にすべてのテーブルロックを解放す るようになりました。 #2141257 (Job #106707) ** 20.2 以前のサーバーで作成された保留リビジョンに対して、変更番号の降順で p4 submi t -e を複数回実行すると、誤ってアーカイブを上書きしてしまうことがありました。 これは修正されました。 #2142324 (Job #102776, #106796) ** p4 help resolve を更新し、自動マージによる解決 ('p4 resolve -am') と手動による a ccept merge ('p4 resolve と am オプショ ンを選択) を区別するようにしました。 自動マージで解決する場合auto-merge で解決し ても、すべての統合がマージされるとは限りません。 #2132796 (Job #106620) ** アップグレードステップの状態をアップストリームサーバーに問い合わせたときに発生し たエラーは、ダウンストリームに正しく伝搬されるようになりました。 #2128951 (Job #106610) ** 昇格された保留のされた変更に対して p4 submit -e -b を実行すると、その変更に関連 するアーカイブがコミットサーバー上で失われる可能性がありました。 これは修正されました。 #2124832 (Job #106380) ** 見つからないアーカイブは p4 verify -z によって報告されないことがありました。これ は修正されました。 #2124826 (Job #105391) ** ストレージテーブルを使用したアーカイブの検証のパフォーマンスが改善されました。(' p4 verify -Z', p4 storage -v') #2122129 (Job #104332, #104452) ** サーバーロックのクリーンアップのアップグレード処理で、異なるバケット番号で作成さ れたサーバーロックやエスケープされたサーバーロック名がクリーンアップされないこと がありました。 これは修正されました。 #2119867 (Job #104527) ** ワイルドカードが埋め込まれたストリームビューの生成が間違っていたのを修正しました 。 ストリームがメインラインの孫で、1 パラメータのインポートパスを持ち、共有パスがが ある場合、ワイルドカードが埋め込まれた最初の共有パスに対して生成されるビューが正 しくありませんでした。 この問題は、LinuxとWindowsのプラットフォームでのみ発生しました。 #2118587 (Job #106130) * 並列同期用のクライアント側スレッドで文字セットコンバータを共有しなくなり、ユニコ ードタイプのファイルの変換中にレース状態が発生し、ワークスペース内のファイルが破 損するのを防止します。 #2115767 (Job #104119) ** ワイルドカードを埋め込んだ共有ストリームパスにファイルがある 場合に、仮想ストリーム内のファイルを開いて送信できるように修 正されました。 #2113026 (Job #105817) ** p4 extension --run コマンドは、デフォルトでレプリカからコミットサーバーに転送さ れなくなりました。 レプリカがこのコマンドをデフォルトで処理するようになりました。 コマンドを転送し たい拡張モジュールは、 RunCommand コールバックから 2 番目の boolean を返します。 2020.2 Patch 5 (2020.2/2112800)のバグ修正 ------------------------ #2109455 (Job #106050) ** アーカイブがすでに使用されているがコミットサーバーで異なる場合の保留プロモーショ ンは、 エッジサーバーによって処理されるようになりました。 #2105325 (Job #105997) * ** *** **** OpenSSL が 1.1.1k にアップグレードされました。 2020.2 Patch 4 (2020.2/2102240)のバグ修正 ------------------------ #2102049 (Job #105871) ** 保留された変更を送信すると、アーカイブファイル名が正しく更新されるようになり、ア ーカイブが上書きされるのを防ぐことができるようになりました。 #2101300 (Job #105862) ** コミットサーバーで重複排除されたプロモートの棚は、エッジサーバーからの更新で上書 きされなくなりました。 #2101237 (Job #105834) ** 保留されたアーカイブが重複排除される場合、ソース ファイルが削除される前に、代わ りに使用されるアーカイブがチェックされるようになりました。 ターゲットファイルがない場合、ソースファイルはターゲットに移動しました。 #2101238 (Job #105889) ** GitFusion で使用される client -x 機能は、高い同時実行シナリオでサーバーをクラッ シュさせないようになりました。 #2099024 (Job #105663, #105664) ** サブミットされた変更リストの記述のタグ付き出力は、変更リストにストリーム仕様が含 まれていて、そのストリームが削除されている場合、 "streamDeleted" タグを含むようになりました。同様に、もしストリームが変更 N の後 に削除されたなら、次のようになります。 p4 stream -o //streampath@N はこのようなエラーメッセージを表示します。 ストリーム //streampath は変更 N の後に削除されました. #2093459 (Job #97388) ** 大量の移動ファイルを含む DVCS フェッチでパフォーマンスが向上しました。 2020.2 Patch 3 (2020.2/2093246)のバグ修正 ------------------------ #2093059 (Job #104926) ** アップグレード後に再起動されていないエッジから 20.2 コミットサーバーへの保留昇格 は、保留されたメタデータから保留されたアーカイブ接尾辞を取り除かなくなりました。 #2092474 (Job #105617) ** グローバルラベルに対して、エッジサーバーから非常に多くのファイルをタグ付けすると 、ネットワークエラーで失敗することがありました。 #2090370 (Job #105650) ** p4 move は、不要な場合に db.resolvex, db.revsh, db.storage, db.storagesh および db.storagesx に排他ロックをかからなくなりました。 #2090311 (Job #104926) ** エッジサーバー上のファイルを既に開いているファイルに保留解除すると、保留されたフ ァイルがエッジサーバーにコピーされ、resolveが使用するようになります。 保留のアーカイブファイルは正しい接尾辞を保持するようになりました。 #2085091 (Job #104559) ** p4 revert は、必要な場合にのみ db.resolvex、db.revsh、db.storagesh および db.sto ragesx の排他ロックを獲得し、 代わりに db.resolvex および db.revsh の共有ロックを獲得するようになりました。 #2083870 (Job #105397) ** ストリーム仕様の保存で、実際に仕様に変更が加えられない場合、変更リストを作成した り、変更リスト番号を消費したりしなくなりました。 #2081609 (Job #105481) ** 保留を含まないサブミットでは、db.storagesh テーブルの書き込みロックがかからなく なりました。 #2081534 (Job #104778) *** プロキシサーバーのテーブルで潜在的なデッドロックが修正されました。 #2080568 (Job #104559) ** p4 revert はもう db.storage の排他的ロックを取得しません。 #2075830 (Job #105037) ** 存在しないストリームに対して p4 stream xxx で間違ったエラーを報告していたリグレ ッションを修正しました。 現在は、'Stream does not exist を正しく報告するようになりました。 #2075236 (Job #105149) ** エッジサーバーからの p4 describe change は、'p4 switch によって作成された保留に 対して Slashes-in-client エラーを報告していました。 これは修正されました。 #2074427 (Job #93890) ** p4 switch で作成された棚の p4 shelf -d と p4 change -d で "Slashes (/) not allow ed in ws0//sroot/main'." エラーが 発生しないように修正されました。 #2073955 (Job #104979) ** ストリーム ParentView の noninherit への変換が ChangeView のリビジョンを確実に保 持するようにしました。 #2073900 (Job #95097) ** p4 switch は、同じディポにあるストリームが関連していると仮定するのではなく、スト リームが関連しているかどうかを判断するために、ストリーム階層をチェックするように なりました。 同じディポにある無関係なストリームに切り替えるには、新しい --allow-unrelated フ ラグを指定する必要があるようになりました。 #2050052 (Job #104777) ** エッジサーバーは、以前は削除されなかった特定の状況下で、不要になった保留ドファイ ルアーカイブを削除するようになりました。 2020.2 Patch 2 (2020.2/2075706)のバグ修正 ------------------------ #2069476 (Job #105118) ** -f または -r で置き換える場合、保留されたアーカイブが存在するかを確認するように なりました。 #2066952 (Job #104764) ** 拡張機能のロギングサポートは、数値キーを持つテーブルを正しく処理するようになりま した。 #2065148 (Job #104359) ** バッチアーカイブのレプリケーション中の保護エラーは、オンデマンドフェッチを無制限 に待機させることはなくなりました。 #2063491 (Job #104927) ** 保留を 20.2 エッジから 20.2 以前のコミットサーバに昇格する場合、保留内の同一ファ イルは不正に重複排除されました。 これは修正されました。 #2063482 (Job #104928) ** 20.2 以前のコミットサーバーとアーカイブを共有しているエッジサーバーからの保留昇 格は、現在期待通りに動作します。 #2063196 (Job #105093) ** バックグラウンドでのサブミットによりアーカイブの転送が失敗した場合、それらのアー カイブは pull -u -t を使用してリストアされるかもしれません。 しかし、コマンドでアーカイブを取得しようとする前にアーカイブがコミットサーバーに 復元されなかった場合、コミットサーバーの rdb.lbr からエントリが削除されたために pull コマンドがそれらを復元する能力を失う可能性がありました。この動作は修正され ました。 #2061370 (Job #105056) * ** P4Lua で知られているデフォルトの仕様定義が更新されました。 #2059990 (Job #104937) ** 統合を含む保留プロモーションはストレージの不整合につながる可能性があります。これ は修正されました。 #2054722 (Job #104525) ** p4 depots コマンドを多数のグラフRepoとグラフパーミッションを持つ一般ユーザー(ス ーパーユーザーではない)が実行した場合、 パフォーマンスが低下することがありました。この性能は現在改善されています。 #2050148 (Job #104049) ** jobspecにStatusフィールドがない場合に p4 fix でクラッシュしていました。修正され ました。 #2050052 (Job #104777) ** Edge サーバーは、以前は削除されなかった特定の状況下で、不要になった保留のされた ファイルアーカイブを削除するようになりました。 #2050051 (Job #104736) ** 特定の条件下で、'-r または -f フラグを指定した p4 shelve が、すでに保留のされ変 更されていないファイルの転送をスキップし、 サーバーがそのファイルが転送されたと信じるために、アーカイブへのアクセスエラーに つながる可能性がありました。 これは修正されました。 #2048298 (Job #104167) ** Edge サーバーは、遅延コピーに変換される前に移動したファイルのサブミット中に作成 された一時的なアーカイブを削除するようになりました。 #2046121 (Job #104674) ** p4 -I sync と p4 -I submit は、パラレルが使用される場合、パラレルよりプログレッ シブを選択しなくなりました。api=88以下に設定することで、 以前の動作に戻すことができます。 #2044187 (Job #104530) ** p4 stream -ov'でビューを生成する際に、db.streamのロック保持時間を短縮するように 変更されました。 #2043733 (Job #104537) ** p4 sync -f でリフレッシュされたファイルの syncTime を正しく記録するようになりま した。 #2042937 (Job #102314) * Windows クライアントで長いファイル名のサポートを使用している場合に、ファイルを交 換できないことを正しく報告するようになりました。 #2042921 (Job #104537) ** p4 sync は、置き換えられるがダイジェストが一致するとスキップされるすべてのファイ ルの記録された syncTime を正しく維持するようになりました。 #2042013 (Job #104403) ** 保留操作の間、エッジサーバーの db.upgrades.rp データベーステーブルの書き込みロッ クはもう取られません。 #2042011 (Job #102314) ** クライアントがファイルを削除できない場合、正しく報告されるようになりました。 2020.2 Patch 1 (2020.2/2057778)のバグ修正 ------------------------ #2051777 (Job #104945) * ** *** **** OpenSSL が 1.1.1i にアップグレードされました。 2020.2 (2020.2/2042415)のバグ修正 ------------------------ #2032364 (Job #104279) ** p4 describe は ktext ファイルの保留されたアーカイブを修正する原因になることがあ りました。これは修正されました。 #2021853 (Job #103829) ** 認証トリガーが無効な場合(ExtEnabled を false に設定する)、それらは考慮されず、 実行されなくなりました。 #2019936 (Job #103732) ** 特定の条件下で、コミットサーバを含むエッジサーバに対して実行されたコマンドは、コ ミットサーバが検証することを期待している 同じホストに対して発行されたユーザーのチケットでないために拒否されたかもしれませ ん。 これは修正されました。 #2019156 (Job #103926) ** コマンド p4 graph receive-pack が予期せずエラーメッセージ Invalid cross-device l ink で失敗することがありました。 この問題は、解凍先のディレクトリが temp ディレクトリのファイルシステムとは異なる ファイルシステム上にある場合に発生します。 これは修正されました。 #2009943 (Job #103716, #103727) ** lbr.storage.skipkeyed を設定してストレージをアップグレードした後に、ストレージダ イジェストを作成するために、 p4 storage -U //archive-path コマンドが追加されました。 #2008378 (Job #103424) ** 新しい lbr.rcs.locking 設定により、上書き書き込みを防ぐためにアクセス中に RCS フ ァイルをロックするサポートが追加されました。 パフォーマンス上の問題から、デフォルトでは無効になっています。 lbr.rcs.locking の変更は、レプリケーションが再開されるまでレプリカに適用されませ んので、サーバーの再起動を推奨します。 #2007789 (Job #102750) ** 読み取り専用のディポへの不正な統合を含む変更を送信すると、クラッシュが発生するこ とがありました。これは修正されました。 #2004866 (Job #103570) ** エッジサーバーからの昇格時に、保留のされた ktext ファイルの未展開のダイジェスト とファイルサイズがコミットサーバーの db.storagesh テーブルに格納されるようになり ました。 #2003995 (Job #103591) ** 失敗または実行中の孤立したアップグレードステップの状態は、アップグレードステップ が正しい順序で再実行され、その状態が正しく更新されるように、リセットされるように なりました。 #2003887 (Jobs #042042, #102435) ** Windows ファイル I/O は、Posix ファイル I/O ルーチンではなく、ネイティブの Windo ws API を使用するようになりました。 これにより、ライブラリアンとエラーログのために同時に開くファイル数の制限がなくな りました。 #2002341 (Job #97311) ** リリース2020.2へのアップデート中に、すべての古いサーバーロックファイルの削除が試 みられます。 #2001593 (Job #103518) ** 失敗または実行中のアップグレードステップの状態は、サーバーを再起動するときに正し くリセットされるようになりました。 #1997782 (Jobs #102941, #103026, #103025) ** Windows でサーバートレースが存在する場合、ネットワークエラーと API エラーが混在 して不正に報告されることがありました。 これは修正されました。 #1994548 (Job #100566, #103323) ** orphan scan control コマンドの p4 storage -l status は、特別な情報メッセージを出 力するようになりました。 他の p4 storage -l 出力メッセージも改善されました。 #1992458 (Job #103253) ** ワークスペースが import+ a_path/... のような import+ パスのストリームを使用して いて、 親ストリームが share a_path/... のような同じビューパスを持つ場合、そのパスで編集 用に開くか送信しようとすると、 ファイルが送信可能ではないという警告またはエラーが発生することがあります。 この 問題は修正されました。 #1991992 (Job #100574) ** p4 storage -l オーファンスキャンコントロールコマンドは、すべて情報メッセージを出 力するようになりました。 #1987452 (Job #103159) ** 削除または移動された ktext ファイルの保留のが失敗することがありました。これは修 正されました。 #1985472 (Job #102283) ** エッジサーバからのフェイルオーバー中に行われた設定とサーバの変更は、フェイルオー バー中のコミットサーバに伝搬されませんでした。 これは、変更を永続化するためにコミットサーバーで手動で変更を行う必要があることを 意味します。これは修正されました。 #1984894 (Job #103052) ** p4 repos nameFilter オプションの -e と -E は、'* または .git で終わらない nameFi lter 値に * ワイルドカードを追加していました。 これは修正されました。 #1984641 (Job #103067) ** p4 storage -d コマンドは、一致するアーカイブがない場合、要求されたストレージレコ ードを削除するのに失敗していました。 これは修正されました。 #1983346 (Job #102440) ** p4 heartbeat コマンドは operator ユーザーの使用をサポートしているにもかかわらず 、 operator ユーザーが実行するとエラーで失敗することがありました。 これは修正されました。 #1979600 (Job #96233) ** エッジサーバーからファイルをグローバルロックしても、グローバルロックができない場 合はローカルロックがかからなくなりました。 #1979089 (Job #100151) ** graph-depot サブモジュールを含むパスに対して p4 diff2 を実行すると、サブモジュー ルオブジェクト自体の差分ではなく、 サブモジュール内の個々のファイルの差分を報告することがありました。これは修正され ました。 #1978112 (Job #102847) ** edge-serverのカスタムストリーム仕様で、カスタムフィールドコードが重複してしまう 問題の動作を修正しました。 #1977774 (Job #102850) ** 遅延コピーされた保留のされたリビジョンの置き換えは、下流のエッジサーバー上でアー カイブの削除を引き起こす可能性がありました。 これは修正されました。 #1973023 (Job #102505) ** コミットサーバがアーカイブを受け取る前に pull を実行しようとすると、バックグラウ ンドサブミットに由来するアーカイブファイルがエッジサーバに転送されないことがあり ました。 これは submit.allowbgtransfer が構成されていないエッジサーバ上でのみ発生しました 。この問題は、バックグラウンドのサブミットからのすべてのアーカイブに対して、 pull の再試行が有効になるように修正されました。 #1972005 (Job #102471) ** エッジサーバークライアントからのストリームスペックを含む昇格した保留を削除すると 、ロックオーダーエラーが発生することがありました。 これは修正されました。 #1969820 (Job #72507) ** タスク ストリーム内のファイルを reopen フラグでサブミットすると、サブミット前に そのファイルに対して resolve が実行されていた場合、 "Files newly opened or reverted during submission" というメッセージでサブミット が失敗していました。 これは修正されました。 #1969695 (Job #102541) ** p4 unshelve は、コマンドの完了時にネットワークエラーが発生してもクラッシュしなく なりました。 #1963208 (Job #102177, #102416, #102442) ** バックグラウンドアーカイブ転送を使用するエッジサーバーからの p4 submit が、クラ イアントからエッジサーバーへのアーカイブ転送が失敗したときに誤って成功することが ありました。 これは修正されました。 #1962945 (Job #102146) ** pull -u コマンドまたはバックグラウンドスレッドで --batch 引数を使用したときの rd b.lbr のスキャン量が減少しました。 #1962874 (Job #102391) ** pull -u コマンドまたはバックグラウンドスレッドの --batch パラメータは、ダイジェ ストの不一致のために失敗した転送を再試行するときに再び尊重されます。 #1962564 (Job #102168) ** ストリーム仕様の統合がエッジサーバで実行され、サブミットがエッジサーバで発生した 場合、データベーステーブル db.integedss はエッジサーバとコミットサーバのいずれで も更新されませんでした。 これは修正されました。 #1962562 (Job #102482) ** エッジサーバー上のワークスペースでストリーム仕様を開き、ユーザーが同じワークスペ ースから p4 stream コマンドで別のストリーム仕様を編集すると、 エッジサーバーのデータベーステーブル db.template と db.bodtextcx は更新されます が、対応するコミットサーバーのテーブルが更新されないことがありました。 これは修正されました。 #1960233 (Job #102066) * P4ALIASES がコマンド出力の最後から改行を取り除くと、spec がエイリアスの一部とし て入力されるのを妨げることがありました。 これは修正されました。 #1957194 (Job #102273) ** p4 heartbeat コマンドは、ターゲットサーバーがハートビートコマンドをサポートしな い場合に検出に失敗することがありました。 この場合、コマンドは有用なエラーで優雅に終了しません。さらに、ターゲットサーバー またはコマンドが終了するまで、接続を試み て失敗し続けることがありました。これは、適切なエラーで直ちに終了するように修正さ れました。 #1955691 (Job #101728) ** エッジサーバーやビルドサーバーからの同期で、複製のアーカイブに多くのリビジョンの ファイルコンテンツがない場合、パフォーマンスが最適でない可能性がありました。 これらのサーバーからの同期では、新しい構成可能変数 rpl.deferred.sends を設定する ことにより、パフォーマンスが向上するようになります。 (対象サーバーで pull -u スレッドが実行されていて、かつ、lbr.replication 設定項目 が readonly 値に設定されている場合に限ります) rpl.deferred.sends を変更すると、それが変更されたエッジ、または、ビルドサーバー 上のすべての新しい同期コマンドに反映されます。 設定の反映にP4Dサーバの再起動は必要ありません。 #1952874 (Job #102099) ** レプリケーションのパフォーマンスにより、submit または shelve によって転送される ファイルのゼロリファレンス ストレージ レコードは作成されなくなりました。 #1952144 (Job #102126) ** 保留がエッジサーバーから昇格され、その保留にストリーム仕様の変更が含まれている場 合、ストリーム仕様が昇格されたことを示すメッセージが表示されるように変更されまし た。 #1950588 (Job #101851) ** エッジサブミットのバックグラウンド転送は、サブミットを実行するエッジサーバの外部 アドレスが有効であることを確認してからサブミットを実行できるようになりました。 #1949353 (Job #101620) ** p4 reshelve 操作はストレージの一貫性の問題を引き起こす可能性がありました。これは 修正されました。 #1948006 (Job #102094) * P4IGNORE ファイルの除外は、より広いパスが無視されるように設定されている場合、評 価されないことがありました。これは修正されました。 #1941631 (Job #100364) ** p4 storage -D 引数はその整数パラメータを検証しませんでした。 これは修正されました。 #1936611 (Job #101639) ** グラフディポの p4 fstat -Ol を中間ブランチで実行し、ブランチチップでそのファイル を削除すると、 サーバがクラッシュすることがありました。 #1932043 (Job #73010) ** 構成可能変数 filesys.depot.min は、個々の p4 submit や p4 shelve コマンドが影響 を与えるディポに対してのみ評価されるようになりました。 #1931477 (Job #101628) ** db.storagesh テーブルの digest は、ktext の展開されていないバージョンを使用して いませんでした。これは修正されました。 #1928089 (Job #101185, #101196) ** p4 -ztag は、同期されたグラフデポに対して、一致するタグを報告するようになりまし た。 一致するタグと、DETACHED_HEAD状態でない場合は、追跡中のブランチの現在のshaも報告 されるようになりました。 #1924457 (Job #100874) ** グラフディポの p4 -ztag diff2 は、タイプフィールドを表示するようになりました。 #1924357 (Job #101369) ** orphan scanner はコミットサーバを共有レプリカとして誤認識していました。これは修 正されました。 -------------------------------------------------------------------------- 2020.1 Patch 12 (2020.1/2298664)のバグ修正 ------------------------ #2292440 (Job #110708) ** LDAP 認証されたユーザーに対する p4 login は、そのユーザーがデータベースに保存さ れた期限切れのパスワードを持っている場合、 パスワード期限切れのメッセージを報告しないようになりました。 #2271158 (Job #108415) ** 同じワークスペースから保留処理されているエッジサーバーのファイルをグローバルロッ クしても、保留処理によってエッジサーバーのロックが解除されなくなりました。 #2270125 (Job #109709) ** エッジサーバーで大量の排他的ロック(+l)されたファイルを開く際の効率が大幅に向上 しました。 #2263613 (Job #109847) ** タイプ "ktext" のファイルを移動、統合、そして保留のした場合、他のクライアントが それを保留のしようとすると、 "tampered with resolve" エラーで保留のに失敗することがありました。この変更により 、この問題が修正されます。 #2263204 (Job #109890) ** 保留操作のエッジとコミットサーバー間のファイル転送中に送信エラーが発生すると、保 留内の遅延コピーされたリビジョンのアーカイブが不正に削除されることがありました。 これは修正されました。 #2254703 (Job #109616) ** 古いバージョンのデータベース レコードを含むジャーナルをレプリケートすると、コミ ット サーバがクラッシュすることがありました。 これは修正されました。 2020.1 Patch 11 (2020.1/2238366)のバグ修正 ------------------------ #2233252 (Job #108864) ** タグ付き p4 groups -v が db.user に対してロックレスであることを確認してください 。 #2230655 (Job #108692) ** p4 help-graph commands になかったコマンド p4 graph verify が追加されました。 #2229990 (Job #108693) ** p4 help verify コマンドは、p4 help-graph verify に変更されました。 #2228626 (Job #96885) ** 同じワークスペースで並列投稿とファイルの返却を同時に行うと、clientEntity/0,d ser verlockディレクトリの検索許可がオフになることがありました。 これは修正されました。 #2225054 (Job #108613) ** カテゴリをログに記録せずに、-v コマンドラインオプションに数字だけを設定してサー バーを起動しても、クラッシュしなくなりました。 #2224928 (Job #108934) * ** *** **** SSLハンドシェイクタイムアウト構成可能変数 ssl.client.timeout は、より短い net.ma xwait 構成可能変数値によって上書きされなくなりました。 #2222740 (Job #108767) ** db.change/db.desc 間の p4d -xx 整合性チェックは、切り詰められた説明と完全な説明 の間の不一致を正しく検出するようになりました。 #2216652 (Job #108691) ** Graph depot コマンドを引数がないか間違った数で発行した場合、 "Usage: see p4 hel p graph" と表示されていました。 これらは "Usage: see p4 help-graph" と表示されるように修正されました。 #2204224 (Job #107572) ** コミットサーバーから p4 sync または p4 print を実行すると、要求されたアーカイブ ファイルがバックグラウンドでのサブミット中にオリジンのエッジサーバーからまだフェ ッチされていない場合、 ライブラリアンエラーが報告されることがありました。これは、これらのアーカイブがオ ンデマンドでフェッチされるようにすることで修正されました。 #2197400 (Job #108045) ** 稀なケースとして、内部コンテキスト構造が NULL になることがありました。このエラー 状態は捕捉され報告されるようになりました。 #2186477 (Job #107943) ** dm.protects.streamspec 構成可能変数が 1 に設定されている場合に、存在しないストリ ームに対して p4 stream -ov を実行できるようになりました。 2020.1 Patch 10 (2020.1/2187281)のバグ修正 ------------------------ #2183174 (Job #105430) ** マージ解決で、マージの 1 部分の最後の 2 行が正しく結合されないことがありました。 これは、ベース、ソース、またはターゲットのファイルの最終行に行末文字がない場合に 発生する可能性があります。 この問題は、新しい構成可能変数 merge.dl.endeol (デフォルトは 0) を 1 に設定する と解決されます。ただし、構成可能変数項目を設定しなくても正しく解決される場合があ り、手動で解決し なければならない競合が登録されることがあります。 #2182410 (Job #107762) ** レプリケーションを待つコマンドが、アップストリームサーバのジャーナルローテーショ ンによって極端に遅延することはなくなりました。 2020.1 Patch 9 (2020.1/2179928)のバグ修正 ------------------------ #2176143 (Job #107796) * ** *** **** OpenSSL が 1.1.1k にアップグレードされました。 #2175266 (Job #107736) ** OpenLDAP が 2.4.59 にアップグレードされました。 #2175089 (Job #107513) * ** SQLite (拡張版) が 3.36.0 にアップグレードされました。 #2174313 (Job #105082) * ** cURL (拡張用) が 7.75.0 にアップグレードされました。 #2174312 (Job #105082) * ** Lua (拡張機能用) が 5.3.6 にアップグレードされました。 #2174311 (Job #105082) * ** Lua-cURLv3 (拡張機能用) が 0.3.12 にアップグレードされました。 #2165146 (Job #107505) ** Cyrus-SASL に CVE-2019-19906 に対応するパッチが適用されました。 #2152761 (Job #106143) ** コミットサーバとエッジサーバの間に遅延がある場合、スタンバイサーバからコミットサ ーバへの pull -u スレッドが、昇格した棚上げ変更からのアーカイブの転送に失敗する 可能性があります。 コミットサーバへのアーカイブの転送に時間がかかることがありました。この問題は、ス タンバイ・サーバの pull -u スレッドが見つからないアーカイブの転送を再試行できる ようにすることで解決されました。 #2151259 (Job #107115) ** バックグラウンドスレッドでの journalcopy 中に遭遇したエラーで、スタンバイまたは フォワーディングスタンバイのサーバログに報告されるものは、エラーメッセージの一部 が欠落しないようになりました。 #2147013 (Job #106795) ** ソースファイルが統合された後、以前の統合範囲でソースファイルのリビジョンが取り消 され、後の統合の試みですべてのリビジョンがすでに統合されたと主張する、取り消し問 題を修正しました。 構成可能変数 dm.integ.undo と統合オプション p4 integ -Ru は、統合された範囲にな い以前の統合の統合クレジットのみを作成することで、この問題を解決します。 #2145945 (Job #106998) ** p4d -xx は db.rev/db.change テーブルペアの整合性チェックの間、より一貫したプレー スホルダー変更レコードを作成するようになりました。 #2141351 (Job #106645) ** p4 storage -d -y は、アーカイブの削除や移動の際にすべてのテーブルロックを解放す るようになりました。 #2141079 (Job #106796) ** p4 help resolve を更新し、自動マージによる解決 ('p4 resolve -am') と手動での acc ept merge による解決 ('p4 resolve で am オプションを選択) を区別するようにしまし た。 自動マージによる解決は、すべての統合がマージされることを保証するものではなく、選 択が自動化され、最適なときにマージが選択されることを保証するだけです。 2020.1 Patch 8 (2020.1/2138914)のバグ修正 ------------------------ #2134823 (Job #104926) ** p4 unshelve は db.storagesh のエッジサーバー上の保留中の解決のために作成された一 時的な保留コピーを正しく追跡するようになりました。 #2132217 (Job #106579) ** ライセンスのない環境下で作成できるRepo数の上限は 3 に変更されました。 #2132013 (Job #106209) ** ライセンスファイルは、アドオン製品の集中型ライセンスに使用される追加機能の公開を サポートするようになりました。 #2129715 (Job #106628) ** 通常起こり得ない特定の条件下で、integrate 用に開かれているが resolve レコードが ないファイルが、submit 中にサーバーをクラッシュさせる可能性がありました。 これは修正されました。 #2124833 (Job #106380) ** missing archives は p4 verify -z によって報告されないことがありました。これは修 正されました。 #2124827 (Job #105391) ** ストレージテーブルを使用したアーカイブの検証のパフォーマンスが改善されました。 ('p4 verify -Z'、p4 storage -v')。 #2120346 (Job #106310, #90948) ** pull -u --batch コマンドは、転送エラーが発生した時にそのバッチを過度に再試行し、 pull スレッドが他のアーカイブを要求するために移動するのではなく、ストールする可 能性がありました。 これは、2019.2 で接続に失敗した後に pull -u --batch が再開できるように修正された ことによるリグレッションが原因でした。 これらのバグは両方とも修正されました。 #2119372 (Job #104527) ** ワイルドカードが埋め込まれたストリームビューの生成が間違っている場合の修正。スト リームがメインラインの孫で、1つのパラメータのインポートパスと、 インポートパスに含まれる共有パスを持つ場合、ワイルドカードが埋め込まれた最初の共 有パスに対して生成されるビューが不正になることがありました。 この問題は、LinuxとWindowsのプラットフォームでのみ発生しました。 #2117410 (Job #106130) * 並列同期用のクライアント側スレッドで文字セットコンバータを共有しなくなり、ユニコ ードタイプのファイルの変換中にレース状態が発生し、 ワークスペース内のファイルが破損するのを防止します。 #2108753 (Job #104119) ** ワイルドカードが埋め込まれた共有ストリームパスにファイルがある場合に、仮想ストリ ーム内のファイルを開いて送信できるように修正されました。 2020.1 Patch 7 (2020.1/2107780)のバグ修正 ------------------------ #2105325 (Job #105997) * ** *** **** OpenSSL が 1.1.1k にアップグレードされました。 #2101465 (Job #105817) ** p4 extension --run コマンドは、レプリカからコミットサーバーに転送されるデフォル トではなくなりました。 レプリカがこのコマンドをデフォルトで処理するようになりま した。 コマンドを転送したい拡張モジュールはは、RunCommand コールバックから 2 番目の boo lean を返します。 #2098369 (Jobs #105663, #105664) ** サブミットされた変更リストの記述のタグ付き出力は、変更リストにストリーム仕様が含 まれていて、そのストリームが削除されている場合、 "streamDeleted" タグを含むようになりました。同様に、もしストリームが変更 N の後 に削除されたなら、次のようになります。 p4 stream -o //streampath@N はこのようなエラーメッセージを表示します。 ストリーム //streampath は変更 N の後に削除されました 2020.1 Patch 6 (2020.1/2096685)のバグ修正 ------------------------ #2088638 (Job #105617) ** エッジサーバーから非常に多くのファイルをグローバルラベルに対してタグ付けすると、 ネットワークエラーで失敗することがありました。 #2082262 (Job #105397) ** ストリーム仕様の保存で、実際に仕様に変更が加えられていない場合、チェンジリストを 作成したり、チェンジリスト番号を消費したりしなくなりました。 #2076299 (Job #104778) *** プロキシサーバーのテーブルでデッドロックが発生する可能性がありましたが、修正され ました。 #2072714 (Job #101504, #105052) ** ファイルハンドルは、トリガープロセスによって継承されなくなりました。 #2071035 (Job #105037) ** 存在しないストリームを参照するときに、正しい Stream does not exist エラーを報告 します。 #2070773 (Job #104764) ** 拡張機能のロギングサポートは、数値キーを持つテーブルを正しく処理するようになりま した。 #2070274 (Job #95097) ** p4 switch は、同じディポにあるストリームが関連していると仮定するのではなく、スト リームが関連しているかどうかを判断するためにストリーム階層をチェックするようにな りました。 無関係なストリームに切り替えるには、新しい --allow-unrelated フラグを指定する必 要があります。 2020.1 Patch 5 (2020.1/2089982)のバグ修正 ------------------------ #2081247 (Job #105481) ** p4 submit は、保留がサブミットに関与している場合にのみ、 db.storagesh を排他的に ロックするようになりました。 #2079990 (Job #102714) ** P4Tunable::Get() 関数は、パフォーマンスを向上させるためにインライン化されました 。 #2079942 (Job #104559) ** p4 revert は必要な場合にのみ db.resolvex, db.revsh および db.storagesh の排他ロ ックを取得し、 代わりに db.resolvex と db.revsh の共有ロックを取得するようになりました。 #2079919 (Job #102715) ** マッピングコードのパフォーマンスを向上させるために、いくつかのMapChar関数がイン ライン化されました。 #2079918 (Job #102713) ** 調整可能な変数がコードのループ中にキャッシュされるようになり、パフォーマンスが向 上しました。 #2079221 (Job #104559) ** p4 revert はもはや db.storage の排他的ロックを取得しません。 2020.1 Patch 4 (2020.1/2072337)のバグ修正 ------------------------ #2069560 (Job #105149) ** edge-server クライアントを使用している場合に describe で Slashes-in-client エラ ーが発生することがありました。 #2069525 (Job #093890) ** p4 switch で作成された保留上の p4 shelf -d と p4 change -d で発生する "スラッシ ュ (/) not allowed in ws0//sroot/main'." エラーを抑制しました。 #2068356 (Job #105118) ** -f または -r で置き換える場合、保留されたアーカイブが存在するかを確認するように なりました。 #2064042 (Job #104937) ** 統合を含む保留プロモーションはストレージの不整合につながる可能性があります。これ は修正されました。 #2063917 (Job #105093) ** background submit の結果、アーカイブの転送が失敗した場合、それらのアーカイブは p ull -u -t を使用して復元することができます。 しかし、アーカイブがコミットサーバーにリストアされなかった場合、その前にコマンド で取得しようとする前にアーカイブがコミットサーバーにリストアされなかった場合、 コミットサーバーの rdb.lbr からエントリが削除されたために pull コマンドがそれら を回復する能力を失う可能性がありました。この動作は修正されました。 #2062635 (Job #104359) ** バッチアーカイブレプリケーション中の保護エラーによって、オンデマンド フェッチが 無制限に待機することはなくなりました。 #2060710 (Job #102935) ** 新しい構成可能変数の閾値 db.monitor.addthresh (ミリ秒単位で指定)より速く完了す る接続は、モニターレベル1または2のdb.monitorテーブルに追加されません。 まだ閾値を越えていないが、スキーマ内のテーブルのロック待ちでブロックされる接続は 、ロック待ちの直前にdb.monitorテーブルに追加されます。 db.monitor.addthresh への変更は、すべての新しいコマンドに適用されます。サーバー の再起動は必要ありません。 #2058012 (Job #093890) ** p4 switch で作成される保留のチェンジリストの記述が改善されました。 #2054715 (Job #104525) ** p4 depots コマンドを、多数のグラフRepoジトリとグラフパーミッションを持つ一般ユー ザー(スーパーユーザーではない)が実行した場合、 パフォーマンスが低下していました。この性能は現在改善されています。 #2047511 (Job #104093) ** p4 verify -S は、+S タイプのファイルに対して、正しいチェンジリスト番号を報告する ようになりました。 #2043225 (Job #104537) ** p4 sync -f は、リフレッシュされたファイルの syncTime を正しく記録するようになり ました。 #2042376 (Job #104530) ** p4 stream -ov でビューを生成する際に db.stream のロック保持時間を短縮するように 変更しました。 #2041405 (Job #104537) ** p4 sync は、置き換えられるがダイジェストが一致するとスキップされるファイルの記録 された syncTime を正しく維持するようになりました。 #2040678 (Job #102314) * Windows クライアントで長いファイル名のサポートを使用しているときにファイルを交換 できない場合、正しく報告されるようになりました。 #2038956 (Job #102314) ** クライアントがファイルを削除できない場合、正しく報告されるようになりました。 #2036197 (Jobs #102941, #103026, #103025) ** Windows で Server tracing が存在する場合、ネットワークと API エラーが混在して不 正に報告されることがありました。 これは修正されました。 2020.1 Patch 3 (2020.1/2051818) のバグ修正 ------------------------ #2051777 (Job #104945) * ** *** **** OpenSSL は 1.1.1i にアップグレードされました。 #2032943 (Job #104279) ** p4 describe は ktext ファイルのための保留のされたアーカイブを修正する原因になる ことがありました。これは修正されました。 #2023784 (Job #104049) ** jobspec に Status フィールドがないときに p4 fix を実行すると、クラッシュすること がありました。 これは修正されました。 #2013287 (Job #103714) ** p4 ldapsync -i は、エラーが発生しても停止しなくなりました。代わりに、指定された 間隔で待機し、再度実行されます。 #2010244 (Job #102750) ** 読み取り専用のディポへの不正な統合を含む変更を送信すると、クラッシュが発生するこ とがありました。これは修正されました。 #2006356 (Job #103570) ** エッジサーバーから昇格したとき、保留のされた ktext ファイルの未展開ダイジェスト とファイルサイズがコミットサーバーの db.storagesh テーブルに格納されるようになり ました。 #2007338 (Job #042042, #102435) ** Windows ファイル I/O は、Posix ファイル I/O ルーチンではなく、ネイティブの Windo ws API を使用するようになりました。 これにより、ライブラリアンとエラーログのために同時に開くファイル数の制限がなくな りました。 2020.1 Patch 2のバグ修正 ------------------------ #2002898 (Job #102212) ** 以前は、submit.allowbgtransferが構成されていない場合、または、'p4 subm it -b'コマンドがエッジサーバではないサーバから実行された場合、'p4 submit-b'は失敗していました。この問題が改修され、デフォルトサブミット のアーカイブ転送動作にフォールバックされ、サブミットが成功するように修 正されました。 #1998612 (Job #103411) ** ファイル引数が指定されていると、「p4 reshelve」がクラッシュする可能性 がありました。この問題は修正されました。 #1998368 (Job #102542) ** エラー処理コードにエラーがあり、エラー時にエラーが発生しないように修正 されました。 #1996539 (Job #103349) ** 複数の引数を使用してバージョン 2020.1 のエッジサーバからの非自動リロ ードグローバルラベルに対して実行された「p4 tag」は、報告されたすべての ファイルのタグ付けにエラーメッセージが出力されずに失敗しました。この問 題は修正されました。 #1991602 (Job #103253) ** 「importa_path /...」のようなimport+パスを持ち、かつ、親ストリームに「 share a_path / ...」と同じビューパスを持つストリームに紐付いたワークス ペースの場合、編集のためにファイルを開くか、ファイルをサブミットすると 、「%depotFile%-警告:ストリーム%stream%クライアントから送信できま せん」というメッセージが表示され、このようなシナリオでのサブミットが失 敗しました。この問題は修正されました。 #1990949 (Job #102789) ** Windowsサーバは、Linuxクライアントの場合は「/」ではなく「\」を使用して パックファイル名をターゲットディレクトリに追加しました。これにより、GC onnはWindowsサーバからのクローン作成に失敗しました。この問題は修正され ました。 2020.1 Patch 1のバグ修正 ------------------------ #1989752 (Job #102995) ** サーバをバージョン 19.1 より以前のバージョンからアップグレードすると、 拡張されていないktextファイルの間違ったチェックサムがdb.storageshに保 存されていました。この問題を改修するため、アップグレードプロセスが修正 されました。すでに19.1以上にアップグレードされているサーバのチェック サムを修正するには、「p4 storage-R-S」を実行してください。 #1989083 (Job #103202) * Helix Authentication Serviceの使用時に「p4login」によって報告された「N avigatetoURL」メッセージは、情報メッセージであるにもかかわらず stderr で発行されました。これは修正されました。 #1988116 (Job #103159) ** 削除または移動されたリビジョンをktext属性でシェルフすると失敗しました 。この問題は修正されました。 #1988112 (Job #103165) ** Archive()拡張コールバック内で呼び出されたGetArchiveFileInfo()メソ ッドは、アーカイブリビジョンを整数ではなく文字列として返すようになりま した。 #1986956 (Job #102795) * ** *** **** OSXCatalinaが完全にサポートされるようになりました。 #1984418 (Job #102440) ** 'p4 heartbeat'コマンドは、オペレータユーザによる使用がサポートされてい る場合でも、オペレータユーザが実行するとエラーで失敗していました。この 問題は修正されました。 #1979653 (Job #97585) ** 特定の構成のレプリカサーバに対して、「p4 user -d」を実行すると、正しい データベーステーブルのロックに失敗し、デッドロックが発生する可能性があ りました。この問題は修正されました。 #1977774 (Job #102850) ** 遅延コピーされた保留リビジョンを置き換えると、下流のエッジサーバ上のア ーカイブが削除されました。この問題は修正されました。 #1975998 (Job #102797) * Windowsクライアントは、RCSの「Author」キーワードが使用され、ファイルを 送信するユーザー名が送信後に変更されたときに、sync / printを介して転送 された「+ k」ファイルタイプファイルの最後に末尾のNULLバイトを残さなく なりました。 #1972509 (Job #102609) 'net=3'や'ssl=3'などの追加トレースを使用すると、WindowsおよびLinuxでの ネットワークエラーがより正確に報告されるようになりました。 #1971423 (Job #101504) ** ジャーナルローテーション中にデータベースのデッドロックにつながる可能性 のあるまれなエラーが修正されました。 #1971422 (Job #102020) ** URLを介したMFAログインは、エッジサーバを介して迅速に配信されるように なりました。 #1971134 (Job #102471) ** エッジサーバのクライアントからストリーム上で生成された保留を削除すると きのロックエラー'Locking failure: db.templatewx locked after db.resolv ex!'を修正しました。 #1970332 (Job #72507) ** タスクストリーム内のファイルが再オープンフラグを付けてサブミットされ、 サブミット前にファイルに対して衝突解決が行われた場合、サブミットは失敗 し、「サブミット中にファイルが新しく開かれたか、元に戻されました」とい うメッセージが表示されました。この問題は修正されました。 #1968897 (Job #102632) ** 'p4 server -c commit-server'は、既存のstartup.N構成を削除しなくなりま した。 #1968805 (Job #102541) ** コマンドの完了中にネットワークエラーが発生した場合に「p4 unshelve」が クラッシュしなくなりました。 #1965109 (Job #102543) ** 'バージョン19.1以前のレプリカ'と'19.1以降にリリースされたコミットサー バ'の間のファイル転送は、fileSizeエラーで失敗する可能性がありました。 この問題は修正されました。 #1964794 (Job #102470) * 「p4 reconcile」/「p4 status」は、「//depot/0」、または「//depot/100」 などの形式の無効なファイル名について報告する場合がありました。この問題 は修正されています。 #1962564 (Job #102168) ** ストリーム仕様の統合がエッジサーバで実行され、サブミットがエッジサーバ 上で発生した場合、データベーステーブルdb.integedssがエッジサーバでもコ ミットサーバでも更新されませんでした。この問題は修正されました。 #1962562 (Job #102482) ** ストリーム仕様がエッジサーバ上のワークスペースで開かれており、ユーザが 「p4 stream」コマンドを使用して同じワークスペースから別のストリーム仕 様を編集を実施した場合、エッジサーバのデータベーステーブル「db.templat e」および「db.bodtextcx」は更新されますが、対応するコミットサーバのこ れらのテーブルは更新されませんでした。この問題は修正されました。 #1961372 (Job #102146) ** 'pull-u'コマンドまたはバックグラウンドスレッドで--batch引数を使用する 場合のrdb.lbrのスキャン量が削減されました。 #1961252 (Job #102391) ** 'pull -u'コマンドまたはバックグラウンドスレッドの--batchパラメーターは 、ダイジェストの不一致が原因で失敗した転送を再試行するときに再び受け入 れらるようになりました。 #1961233 (Job #102177, #102416, #102442) ** クライアントからエッジサーバへのアーカイブ転送が失敗した場合、バックグ ラウンドアーカイブ転送を使用したエッジサーバからの「p4 submit」が誤っ て成功する可能性がありました。 この問題は修正されました。 #1957137 (Job #102273) ** 'p4 heartbeat'コマンドは、ターゲットのサーバがハートビートコマンドを受 付できなかった場合の検出に失敗していました。この場合、コマンドは正常に 終了せず、有用なエラーが出力されました。さらに、ターゲットサーバ、ま たは、コマンドが終了するまで、接続を試みて失敗し続けました。この問題は 、適切なエラーですぐに終了することで修正が行われました。 #1955306 (Job #101728) ** 多数のリビジョンのファイルコンテンツがレプリカのアーカイブにない場合、 エッジサーバ、または、ビルドサーバからの同期パフォーマンスが最適ではな かった可能性がありました。 新しい「rpl.deferred.sends」を値「1」に設定 することにより、これらのサーバからの同期パフォーマンスを向上させること ができます。サーバで「pull-u」スレッドが実行されており、「lbr.replicat ion」構成可能が「読み取り専用」の値に設定されている場合となります。 2020.1 のバグ修正 ------------------------ #1943492 (Job #97347) ** '-s'フラグの必須引数を指定しない「p4failover-i」のプレビューモードでは 、誤った「空の識別子は許可されていません」エラーが出力されていました。 この問題は修正されました。 #1941632 (Job #101653) ** シングルスレッドサーバリクエストは、保留中のストレージアップグレードリ クエストを開始しました。この問題は修正されました。 #1941274 (Job #100128) ** 失敗したフェイルオーバートリガーは、重複したエラーメッセージを構造化エ ラーログと非構造化ログに記録しました。この問題は修正されました。 #1939044 (Job #101754) ** タグ付き出力で正しく機能するように「Stream//path/nameshelved」メッセー ジを修正しました。 #1936611 (Job #101639) ** グラフディポの「p4fstat-Ol」は、ブランチの途中で実行するとサーバがク ラッシュし、ブランチの一部でファイルが削除される可能性がありました。 #1935056 (Job #44721) ** 存在しないラベルに対して「p4 tag -n」を実行しても、ラベルは作成されな くなりました。 #1933485 (Job #101726) ** エッジサーバ、または、ビルドサーバからの並列同期パフォーマンスが向上し ました。どちらのサーバも、構成可能な「lbr.replication」が「cache」の値 に設定され、1つ以上の「pull-u」スレッドが実行されており、いくつかのリ ビジョンのアーカイブファイルの内容がこれらのタイプのレプリカ上のアーカ イブにない場合でのパフォーマンスが向上します。 #1932565 (Job #101663) ** エッジサーバ、または、ビルドサーバから「sync-f」を使用してリビジョンを 更新するときに、クライアントのリストエントリが破損することはなくなりま した。この問題は、どちらのサーバも、構成可能な「lbr.replication」が「c ache」の値に設定され、1つ以上の「pull-u」スレッドが実行されており、い くつかのリビジョンのアーカイブファイルの内容がこれらのタイプのレプリカ 上のアーカイブにない場合に発生しました。 #1932043 (Job #73010) ** 構成可能変数「filesys.depot.min」は、「p4 submit」または「p4 shelve」 コマンドが影響するディポにのみ適用されるようになりました。 #1931477 (Job #101628) ** 保留内のキーワード改訂のダイジェストは計算されませんでした。この問題は 修正されました。 #1930299 (Job #101687) ** Extensionアーカイブと解凍されたアーカイブフックとMFAPreフックのファイ ルの両方が欠落している場合のExtension AuthPreSSOのエラー処理を改善しま した。 #1930296 (Job #101704) ** Extensionsインスタンス構成データを保存するときに、'%'文字が適切にエス ケープされませんでした。 #1929520 (Job #97815, #101422, #101452, #101454) ** 管理者以外のユーザが、ストレージレコードテーブルを表示できるようになり ました。さらに、キーワードリビジョンのダイジェストが計算されない場合、 「storage_upgrade_errors」ファイルにはlbrFile値とlbrRev値の両方が含ま れるようになりました。ストレージのアップグレード中のダイジェストの生成 は、「lbr.storage.skipkeyed」構成変数を使用して抑制することができます 。'p4 storage'の-v引数は、未設定のダイジェストを正しく報告するようにな りました。 #1929471 (Job #101586) ** 拡張インスタンス構成データは、単一のクライアント接続内の呼び出し間で更 新されるようになりました。 #1928337 (Job #101229) ** 以前は、ストリーム仕様は、特定のワークスペースで1人のユーザが開いてか ら、同じワークスペースで別のユーザがサブミットすることができました。こ れは、編集用にファイルを開いたユーザのみがサブミットできるファイルの予 想される動作とは逆であり、競合が発生すると多くの問題が発生する可能性が ありました。解決策は、編集のためにストリーム仕様を開いたユーザがストリ ーム仕様のサブミットを行うこととする運用での回避となります。 #1925762 (Job #101314) ** Extension機能のGlobalConfigFieldsコールバックのエラー処理が改善されま した。 #1924457 (Job #100874) ** グラフディポの「p4 -ztag diff2」にタイプフィールドが表示されるようにな りました。 #1923576 (Job #101541) ** Extensionパッケージのバイナリコンテンツは、行末変換のために転送中に破 損する可能性がありました。この問題は修正されました。 #1919900 (Job #101127) ** ストレージテーブルの構築プロセスをモニターに表示できるようになりました。 #1919523 (Job #101062) ** グラフディポに対しての「p4 have」の結果から一致するリポジトリがない場 合、失敗として完了しました。今回の修正により、失敗メッセージ「一致する リポジトリがありません」が警告メッセージ「ファイルがクライアントにあり ません」に変更されました。 #1919007 (Job #97651) **** p4brokerのcheckauth機能は、ユーザがログインしておらず、自動ログインプ ロンプトが有効になっている場合にハングする可能性がありました。この問題 は修正されました。 #1918882 (Job #93836, #101365) ** LinuxおよびMacプラットフォームでのサーバロックの競合状態が修正されまし た。 #1902809(Job #100945)** 'p4 revert -C'は、期待どおりに管理者のワークスペースを無視するようになりました。 #1900754(Job #96680)** server.log.file。*構成値がフェイルオーバー中にチェックされるようになり 、フェイルオーバーが成功した後にファイルが書き込み可能になることが保証されます。 #1899322(Job #100116)** クライアントextensionのp4:connect接続エラーは、p4.errorsで報告 されませんでしたが、これは修正されました。 #1898424(Job #100873)** 「p4diff2-Od」は、実際にいくつかの異なるファイルがある場合に、「異なる ファイルがない」という警告を誤って生成することがありました。 これは修正されました。 #1897132(Job #100097)** を含むP4EXTENSIONS。パス内の(ドット)は、これらのクライアント拡張機能 をロードして実行しません。これは修正されました。 #1896318(Job #100568)** 'p4 storage -l pause // depot / ...'リクエストは、孤立したスキャナーが 一時停止状態に入るまで待機してから戻るようになりました。 #1894033(Job #100608)** 読み取り専用のコマンドで競合するワークスペースでエラーが発生しないように します。 'p4 opens -c 'または-uの場合、ユーザーの現在 のワークスペースは無関係であり、そのクライアントが別のサーバに関連付けら れている場合はエラーは表示されません。 ワークスペース名が引数として指定されている場合の「p4client」、またはコマ ンドを開始するユーザーに関連付けられているワークスペースではなく、フォー ムにリストされているワークスペース名を検証する必要がある「p4client-i」の 場合も同様です。 #1893837(Job #100555)** サーバは、「p4verify」の実行中に読み取り用にRCSを開こうとしたときに 、永続的な.lckエラーを無視するようになりました。 #1893174(Job #98818)** サーバロック「storageup / storageup」の「timeholded」フィールドに誤 った値が表示されました。これは修正されました。 #1891955(Job #90959)** 'p4 sync -L'により、ファイルを#0のリビジョン指定子で指定できるようになりました 。 #1891322(Job #100615、#100616)** キー付きファイルのダイジェストの計算がストレージのアップグレードプロセ ス中に失敗した場合は、メッセージをログに記録します。ストレージのアップ グレードプロセス中のダイジェスト計算中に、ストレージテーブルの書き込み ロックを保持することは避けてください。 #1891210(Job #98489)** 'p4 ldapsync'は、サーバが違法と見なすユーザー名を持つLDAP内のユーザ ーをスキップするようになりました。 #1891097(Job #94337、#42412)** キーなしデータは、「@dv@」レコードに正しくジャーナルされるようになりました。 #1889618(Job #100613)** ファイルロック(.lck)の作成は、失敗するまでに長い時間がかかる可能性が あります。 サーバは、OSから返されたエラーをチェックし、永続的なエラーの場合はす ぐに失敗します。 #1884636(Job #41905)*** プロキシキャッシュ内の破損したRCSアーカイブファイルは、そのファイルの 新しいリビジョンがキャッシュされないようにします。これは修正されました。 #1883404(Job #90569)** DVCSエンジンは、MsgDM :: NoSplitMovesメッセージを出力する前に、欠落し ているファイルのリストを出力するようになりました。このメッセージは、移動されたフ ァイルをフェ ッチしていて、移動ペアの他のファイルが欠落している場合に表示されます。 #1881257(Job #98102)** 'p4 login -s'を '-a'、 '-h'、またはユーザー名のいずれかで実行すると、 チケットの有効期限が遠い将来であることが報告されます。これは修正されました。 #1875000(Job #100028)* 「p4clean」および「p4reconcile」は、Windowsで「*」ワイルドカードを正し く処理するようになりました。 #1863490(Job #96679)** ジャーナルのメタデータが古くなっている場合、「p4servers-J」コマンドはPersistedJo urnal、 PersistedSequence、AppliedJournal、およびAppliedSequenceに対して誤った 値を返す可能性がありました。 今後は、statejcopyファイルを使用してPersisted値を取得し、stateファイルを使用して 、 Applied値を取得して、これらの値が正しくなるようにします。 -------------------------------------------------------------------------- 2019.2の主な新機能 ------------------ #1859368(Job #99850)** 最小限のダウンタイムアップグレード。アウトサイドインアップグレードのサポートが再 確立されました。 このファイルの冒頭にあるアップグレード通知を参照してください。 #1856324(Job #94869)** 構成可能な履歴が記録されるようになりました。 'p4 configure set/unset'または'p4d -cset/-cunset'のいずれかを使用 した2019.2以降のサーバでの構成可能な変更が記録されるようになりました。 この履歴は、「p4configureshow」と同様に動作する「p4configurehistory」 で表示されます。 #1828890(Job #95112、#90346、#67029)** 構造化ロギングが改善されました。 構造化ログには、既存のイベントの新しいバージョンを追加できるバージョン 管理されたスキーマが含まれるようになりました。イベントの更新バージョン は、イベントタイプフィールドにピリオドの後にサーババージョンを含める ことで表されます。このリリースの新しいバージョンのイベントタイプは次の とおりです。 2.49-CommandEnd 6.49-監査 8.49-NetworkPerformance 9.49-DatabasePerformance 構成可能な「serverlog.version.N」を使用して、構造化ログファイルを特定 のサーババージョンの形式に固定できます。 以前の構造化ログイベント形式を保持するには、構成可能な「serverlog.vers ion.N」を48に設定します。 #1873195(Job #99688、#98735、#97689、#23625)** 孤立したデポファイルの検出とアーカイブのクリーンアップ機能が追加されました。 「-l」および「-d」フラグが「p4ストレージ」に追加されました。これらのフラグを 使用して、送信またはシェルフ操作の失敗から残った孤立したデポファイルを検 出してクリーンアップできます。詳細については、「p4ヘルプストレージ」を参照し てください。 2019.2のその他の新機能 ------------------ #1872848(Job #98957、#96750)** ストリーム仕様へカスタムフィールドを作成する機能を追加します。カスタム フィールドを仕様に追加するときは、フィールドコード値に「NNN」プレース ホルダー値を使用して、次に使用可能なコード値を自動的に割り当てます。 #1862346(Job #98937)** 新しいコマンド「p4streamspec」が追加されました。新しいコマンドを使用す ると、カスタムフィールドをストリーム仕様に追加できます。 #1859414(Job #99722)** 保留中のチェンジリストのストリーム仕様の変更が保留されるシナリオの場合、 変更が元に戻されてから、クライアントワークスペースが別のストリームに切 り替えられます。ファイルを保留中の変更リストに追加して、前のストリームか らのストリーム切替えとともに保留できるようになりました。 #1856483(Job #99721)** ストリーム仕様は、任意のストリームのコンテキストからの保留された変更 から削除できるようになりました。また、保留された変更から編集を削除する ために、ストリーム仕様を開いている必要はありません。 #1853371(Job #98048)** 「p4verify」は、'-S'と'-v'を一緒に使用して、棚上げされたファイ ルのダイジェストを再計算することをサポートするようになりました。 #1847657(Job #92631)** 新しいフィールド「gconn-serverId」がリポジトリ仕様に追加されました。 このフィールドのデータは、そのリポジトリをミラーリングしているHelix4Gi tインスタンスから取得されます。 #1843953(Job #95377)** 「フェイルオーバー」トリガーが追加されました。スタンバイサーバが新し いマスターになり、「p4フェイルオーバー」コマンドが成功したときに最初に 起動したときに発生します。 #1842551(Job #98058)** 新しいフラグ「-Z」が「p4verify」コマンドに追加されました。 これは「p4storage-v」要求と同等であり、verifyコマンドはdb.revテーブル の代わりにdb.storageテーブルを使用してチェックサム比較を実行します。こ れにより、遅延コピーされたファイルの重複チェックが回避されます。 #1840946(Job #99415)** サーバ内のデポファイルのファイルサイズと一致するストレージレコードの serverSizeフィールドを記録しています。 さらに、送信されたリビジョンのタイプが圧縮され、p4構成可能な「submit.s toragefields」が設定されている場合、デポファイルのダイジェストが計算さ れ、ストレージレコードのcompCksumフィールドに保存されます。 #1833159(Job #99047、#96805)** 新しい「p4extension--run」オプションを使用すると、ユーザーはサーバ側 の拡張機能を直接操作できます。拡張機能は、プレーンメッセージまたはタグ 付きメッセージと進行状況の更新をクライアントプログラムに送信できます。 これの1つの用途は、カスタムコマンドを実装することです。 例えば 'p4 extension --run fancyBranchMakerargs'。 #1826797(Job #94456)** 'p4obliterateは'新しい-pパージオプションをサポートします。これにより、 「p4アーカイブ」の後に「p4アーカイブ-p」という2ステップのプロセスを実 行する必要がなくなります。これにより、リビジョンが削除済みとしてマーク され、アーカイブファイルを削除しながら、統合履歴はそのまま残ります。 #1821614(Job #98956)** タイプ「コネクタ」のサーバでのみ使用するための新しいサーバ仕様フィ ールド「updateCachedRepos」が追加されました。彼の変更の前に、「gconn - -poll-repos」は、「externalAdress」フィールドに含まれるgitリポジトリの リストについて、そのHelix「コネクタ」サーバ仕様を照会しました。この リリースとアップグレードにより、リポジトリのこのリストは「externalAddr ess」から新しい「updateCachedRepos」に移動しました。 注:Helix4Gitは、HelixCoreの前にアップグレードする必要があります。そう でない場合、gconn --poll-repos 'は' externalAdress 'にリポジトリの空の リストを見つけます。 #1808665(Job #96987)** 新しい構成可能なdb.monitor.term.allowを1に設定すると、ユーザーは自分の プロセスを終了できます。 2に設定すると、ユーザーは自分のプロセスを一時 停止および再開することもできます。これらのユーザーが「p4monitortermina te」を使用できるようにするには、少なくとも「読み取り」権限が必要です。 2019.2 Patch 8のバグ修正 ------------------------ #1977774(Job #102850)** 遅延コピーされた保留リビジョンを置き換えると、ダウンストリームエッジサーバ上の アーカイブが削除されました。これは修正されました。 #1975999(Job #102797)* Windowsクライアントは、RCSの「Author」キーワードが使用され、ファイルを サブミットするユーザー名がサブミット後に変更されたときに、sync/printを介 して転送された「+k」ファイルタイプファイルの最後に末尾のNULLバイトを残さなく なりました。 #1975256(Job #102789)** Windowsサーバがパックファイル名をターゲットに追加しました Linuxクライアントの場合は「/」ではなく「\」を使用するディレクトリ。こ れにより、GConnはWindowsサーバからのクローン作成に失敗しました。 #1973248(Job #102389)** タイプLLISTのカスタム仕様フィールドがタブでフォーマットされていること を確認します。 #1972128(Job #102471)** エッジサーバクライアントからストリーム仕様でプロモートされたシェルフを削除する場 合に発生した、 ロックエラー「ロックの失敗:db.resolvexの後にdb.templatewxがロックされました!」 を修正しました。 #1971421(Job #101504)** ジャーナルローテーション中にデータベースのデッドロックにつながる可能性 のあるまれなエラーが修正されました。 #1971420(Job #102020)** URLを介したMFAログインは、エッジサーバを介して迅速に配信されるように なりました。 #1970670(Job #102609) net=3やssl=3などの追加のトレースを使用すると、WindowsおよびLinuxで のネットワークエラーがより正確に報告されるようになりました。 #1970333(Job #72507)** タスクストリーム内のファイルが再オープンフラグを付けて送信され、送信前 にファイルに対して解決が行われた場合、送信は失敗し、「サブミット中にフ ァイルが新しく開かれたか、元に戻されました」というメッセージが表示されます。 これは修正されました。 #1969317(Job #102482)** ストリーム仕様がエッジサーバ上のワークスペースで開かれていて、ユーザ ーが「p4 stream」コマンドを使用して同じワークスペースから別のストリー ム仕様を編集した場合、エッジサーバデータベーステーブルdb.templateお よびdb.bodtextcxが更新されます。ただし、対応するコミットサーバテ ーブルは更新されませんでした。この問題は修正されました。 #1968334(Job #102541)** コマンドの完了中にネットワークエラーが発生した場合に「p4unshelve」がク ラッシュしなくなりました。 #1967144(Job #102543)** 19.1より前のレプリカと19.1以降のコミットサーバリリース間のファイル転 送は、fileSizeエラーで失敗する可能性がありました。これは修正されました。 #1964794(Job #102470)* 「p4reconcile」/「p4status」は、「//depot/0」または「//depot/100 」などの形式の無効なファイル名について報告する場合がありました。これは修正されま した。 #1960706(Job #102177、#102416、#102442)** クライアントからエッジサーバへのアーカイブ転送が失敗した場合、バック グラウンドアーカイブ転送を使用したエッジサーバからの「p4送信」が誤っ て成功する可能性がありました。これは修正されました。 #1959367(Job #102146)** 'pull-u'コマンドまたはバックグラウンドスレッドで--batch引数を使用する 場合のrdb.lbrのスキャン量が削減されました。 #1959142(Job #102350)** スペックスペック文字列に「Maxwords」がありませんでした。 これにより、ストリーム仕様の仕様編集により、編集されたストリーム仕様を db.bodtextに保存するときに、Paths:elementにこのフィールドプロパティが 保持されなくなりました。 #1958997(Job #102391)** 'pull -u'コマンドまたはバックグラウンドスレッドの--batchパラメーターは 、ダイジェストの不一致が原因で失敗した転送を再試行するときに再び受け入 れられます。 2019.2 Patch 7のバグ修正 ------------------------ #1955699(Job #99520)** 自動リロードラベルを更新する複数の引数を使用して「p4 tag」を実行しても 、ラベルがメモリにロードされ、各引数のアンロードデポに再書き込みされる ことはなくなりました。 #1951949(Job #101851)** エッジサブミットのバックグラウンド転送により、サブミットの続行を許可する前に、 サブミットを実行するエッジサーバの外部アドレスが有効であることが保証さ れるようになりました。 #1938920(Job #101728)** 多数のリビジョンのファイルコンテンツがレプリカのアーカイブにない場合、 エッジサーバまたはビルドサーバからの同期のパフォーマンスが最適 でなかった可能性があります。 新しい「rpl.deferred」を"1"に設定することにより、これらのサーバか らのこのような同期のパフォーマンスを向上させることができます。 **条件** レプリカサーバ側で「pull-u」スレッドを実行 構成可能変数「lbr.replication」を「readonly」に設定 #1935071(Job #101653)** シングルスレッドサーバリクエストは、保留中のストレージアップグレード リクエストを開始します。これは修正されました。 #1932610(Job #101726)** エッジサーバまたはビルドサーバからの並列同期のパフォーマンスが向上 しました。どちらも、構成可能な「lbr.replication」を「cache」の値に設定 し、1つ以上の「pull-u」スレッドを実行し、アーカイブファイル多くのリビ ジョンのコンテンツは、レプリカのアーカイブにありません。 #1930770(Job #101577)** 2019.2のアップグレード後に、古いカスタマイズされた仕様を修正するための サポートを提供します。 --repairオプションを使用すると、エラーの原因と なるカスタマイズされた仕様を修正できます。 2019.2より前のサーバから2 019.2以降のサーバにアップグレードした後、カスタマイズされた仕様でエ ラーが発生する場合があります。以前の仕様のカスタマイズには、互換性のな いデータまたは欠落しているデータが含まれています。 #1930633(Job #101663)** エッジサーバまたはビルドサーバから「sync-f」を使用してリビジョンを 更新するときに、クライアントのリストエントリが破損することはなくなりま した。どちらのサーバでも、「lbr.replication」を「cache」の値に設定し 、アーカイブファイルを設定できます。リビジョンのコンテンツはレプリカの アーカイブにありません。 #1930299(Job #101687)** 拡張機能アーカイブと解凍されたファイルの両方が欠落している場合の拡張機 能AuthPreSSO、アーカイブ、およびMFAPreフックのエラー処理を改善します。 #1930296(Job #101704)** 拡張インスタンスの構成データを保存するときに、「%」文字が適切にエスケ ープされるようになりました。 #1929494(Job #97632)** 以前は、ストリーム仕様は、仕様を編集用に開いたワークスペースにアンシェ ルフできませんでした。ワークスペースで開いたときにストリーム仕様をアン シェルブすると、解決がスケジュールされるようになりました。 ストリーム仕様が解決されると、保留解除アクションが完了します。 #1920305(Job #101314)** 拡張機能のGlobalConfigFieldsコールバックのエラー処理が改善されました。 2019.2 Patch 6のバグ修正 ------------------------ #1938267(Job #97815、#101422、#101452、#101454)** ストレージ権限の要件が緩和され、通常のユーザーがストレージレコードテー ブルを表示できるようになりました。 lbrFileフィールドとlbrRevフィールド は、ストレージのアップグレード中に生成されるエラーメッセージに追加され ます。これらのメッセージは、キーワードリビジョンのダイジェストが計算さ れない場合に、「storage_upgrade_errors」ファイルに書き込まれます。スト レージのアップグレード中のダイジェストの生成は、「lbr.storage.skipkeye d」構成変数を使用して抑制することができます。 'p4 storage'の-v引数は、 未設定のダイジェストを正しく報告するようになりました。 #1929471(Job #101586)** 拡張インスタンス構成データは、単一のクライアント接続内の呼び出し間で更 新されるようになりました。 #1929166(Job #101571)** 拡張構成データが引用符を削除しなくなりました。 #1927240(Job #101541)* 拡張パッケージのバイナリファイル部分は、テキストファイルとして処理され たため、転送中に破損する可能性があります。これは修正されました。 #1926421(Job #100917)** 'p4 graphcat-file'コマンドに-oオプションがありませんでした。この変更に より、不足しているオプションが追加されます。 2019.2 Patch 5のバグ修正 ------------------------ #1926870(Job #101494)** 特定の条件下において、実行ブランチのファイルに対する「p4submit -e」は、 アーカイブファイルがサーバが期待する場所にないようにサブミットされる可能性が ありました。これは修正されました。 #1926248(Job #100948)** 'p4 submit'は、'ay'で解決された後、誤って変更された非シェルブファイル をサブミットしようとすると、"tampered with afterresolve"エラーで 失敗するようになりました。 #1924492(Job #101216)* 同上マッピングにより、「p4reconcile」または「p4clean」でファイルが失わ れる可能性があります。これは修正されました。 #1924491(Job #101579)** 引数の数が多いコマンドのパフォーマンスが向上しました。 特に、「p4 sync -L」は、バッチサイズが10000以上の巨大なファイルリスト で大幅に高速化されています。 #1923793(Job #101127)** ストレージテーブルの構築プロセスをモニターに表示します。 2019.2 Patch 4のバグ修正 ------------------------ #1915408(Job #101215)** SSL対応サーバのメモリリークが解消されました。 2019.2 Patch 3のバグ修正 ------------------------ #1914600(Job #101297)** RCSロックが原因でsyncパフォーマンスが低下していましたが、これは修正されました。 #1914512(Job #101243)** 第一段階のストレージアップグレードは、失敗したダイジェストに関する誤っ たエラーメッセージを生成していましたが、これは修正されました。 #1912874(Job #101004)** ストレージアップグレードプロセスの最初のフェーズでは、1回のトランザク ションでのストレージレコードの数が1000に制限されるようになりました。 #1911819(Job #101126)** これで、ストレージ孤立スキャナープロセスがモニターに表示されます。 #1910009(Job #100949、#101031)** 下位互換性のために、ジョブとストリームの仕様を「NNN」の代わりに明示的 な番号を使用してカスタマイズできるようになりました。 2019.2 Patch 2のバグ修正 ------------------------ #1907359(Job #99171)** パーティション化されたdb.sendqテーブルは、並列同期の終了時およびクライ アントの削除時に空の場合は、削除されるようになりました。 #1905528(Job #100555)** 読み取り用にRCSファイルを開こうとしたときの永続的な.lckエラーを無視し ます。 #1905527(Job #100956)** 孤立スキャン中のストレージレコードの検索には、パフォーマンスの問題があ りましが、これは修正されました。 #1904027(Job #100945)** 'p4 revert -C clientname'は、クライアント名がパラメーターとして指定さ れているため、管理者のクライアントを無視する必要がありました。これは修正されまし た。 #1903205(Job #101017)** 新しいトラックロギングが有効になっている場合、リモートデポアクセスによ りハングが発生する可能性がありました。これは修正されました。 #1903205(Job #100868)** このリリースで追加された新しい構造化ログイベントは、ログファイルがバー ジョン48以下に固定されている場合はログに記録されなくなりました。これら のイベントタイプには、「.49」バージョン指定子があります。 #1902941(Job #100588)** 一致しないテーブルキーを結合しようとすると、サーバが悪い結果を返す可 能性がありました。これは修正されました。 #1898941(Job #100027)** 'failed-over'トリガーイベントをExtensionsで使用できるようになりました。 #1898491(Job #100554)** 'p4d -cset'または 'p4d -cunset'のいずれかで変更が行われた場合、 serverIdが構成履歴に正しく記録されるようになりました。 #1898491(Job #93870)** 'p4d -cset'、'p4d -cunset'、および'p4d -cshow'は、すべての テーブルで書き込みロックを取得しなくなりました。代わりに、必要なテーブルのみがロ ックされます。'p4d -cshow'は、読み取りロックのみを取得するようになりました。 #1898491(Job #89608)** 'p4d-cset'と 'p4d -cunset'は、サーバが同じフラグと環境で起動した場合 と同じ方法で、ジャーナルファイルも書き込むように解決するようになりました。'p4d - cse t'を使用してP4JOURNALを設定するときに、新しい値によって使用されているジャーナル フ ァイルが変更される場合は、代わりに新しい値が使用されます。 2019.2 Patch 1のバグ修正 ------------------------ #1896353(Job #100568)** 'p4 storage -l pause //depot/...'リクエストは、孤立したスキャナーが 一時停止状態に入るまで待機してから戻るようになりました。 #1895480(Job #100608)** 読み取り専用のコマンドで競合するクワークスペースでエラーが発生しないようにします 。 'p4 opens -c 'または-uの場合、ユーザーの現在のワークスペース は無関係であり、そのワークスペースが別のサーバに関連付けられている場合は エラーは表示されません。 ワークスペース名が引数として指定されている場合の「p4client」、またはコマ ンドを開始するユーザーに関連付けられているワークスペースではなく、フォー ムにリストされているワークスペース名を検証する必要がある「p4client-i」の 場合も同様です。 #1891322(Job #100615、#100616)** ストレージのアップグレードプロセス中にキー付きファイルのダイジェストの 計算が失敗した場合、サーバはメッセージをログに記録するようになりまし た。さらに、サーバは、ストレージのアップグレードプロセス中のダイジェ スト計算中にストレージテーブルの書き込みロックを保持することを回避する ようになりました。 #1889618(Job #100613)** ファイルロック(.lck)の作成は、失敗するまでに長い時間がかかる可能性が ありましたが、OSから返されたエラーを確認し、永続的なエラーの場合はすぐに失敗しま す。 #1888789(Job #100682)** 孤立したスキャナーは、Windowsプラットフォームで相対的なシンボリックリ ンクを正しくたどりませんでしたが、これは修正されました。 #1887331(Job #83623)* ** 破棄された.lckファイルが正しく削除されるように、「filesys.lockdelay」 のデフォルト値が300から90に減少しました。 #1887330(Job #100634)** 'p4 storage -l start //depot/...'は、 'depot'の部分文字列である名前 の孤立したスキャナーが存在する場合に失敗する可能性がありましたが、これは修正され ました。 #1875057(Job #100028)** 「p4clean」および「p4reconcile」は、Windowsで「*」ワイルドカードを正し く処理するようになりました。 2019.2 Patch のバグ修正 ------------------------ #1882284(Job #100524)** ファイルタイプをtempobjタイプ(+S)から非tempobjタイプに変更すると、 以前のすべてのリビジョンが誤って削除されましたが、これは修正されました。 #1877678(Job #100400)** シンボリックリンクで発行されたFileSys::Stat()を呼び出すと、オペレ ーティングシステム間で一貫性のない結果が返されます。これは修正されまし た。 #1869587(Job #99913)** LEOFを超えるジャーナルローテーションは、LEOFによって制約される必要があ るレプリカに送信されなくなりました。 #1867765(Job #99911)** 現在のジャーナルのサイズを決定する直前に現在のジャーナルがローテーショ ンされた場合、現在のジャーナルからのジャーナルフラグメントに対するメタ データの「pull」または「journalcopy」要求が失敗しなくなりました。 #1866020(Job #100158)** キャッシュモードレプリカから2016.2より前のクライアントと同期されたUTF8 タイプのファイルは、ディポファイルエラーを報告する可能性がありました。これ は修正されました。 #1865912(Job #100130)** 書き込み権限のないディレクトリにファイルを複製するときのクラッシュが防 止されるようになりました。 #1861550(Job #98869)** 'pull -L'スレッドは、LEOFを超えるトランザクションを 'standby'または 'f orwarding-standby'サーバのメタデータに適用しなくなりました。また、LE OFが前のジャーナルにある場合、時期尚早に次のジャーナルに進みません。 #1858397(Job #100012)** ストリーム仕様が変更されているが保留されておらず、ファイルが保留されているが 開かれていない場合、「p4 shelve -d -c N」は、「保留された変更Nが 部分的に削除され、まだストリームが含まれています...」と誤って報告します。 ストリームの仕様が棚にあることはなく、メッセージは正しくありませんでした。 「保留された変更Nが削除されました」を報告するように修正されました。 #1858257(Job #99978)** アップグレードストレージウォーカーは、排他モードでウォーカーロックを誤 って取得し、アップグレードの第2フェーズで「safe」コマンドをブロックし ていました。これは修正されました。 #1855841(Job #99869) 保留された変更で、あるストリームのオープンストリーム仕様が変更され、 そのストリームからファイルが変更された後、ストリーム仕様とファイルが元 に戻され、クライアントが別のストリームに設定された場合、「p4 describe -Sclno」の結果が以下のように返却されましたが、修正されました。 メッセージ: RpcTransport: partner is not a Perforce client/server #1854429(Job #99609)** アーカイブが欠落している変更で「p4submit-b」がエッジサーバから実行された場合、 コミットサーバのプルスレッドがクラッシュし、欠落しているアーカイブ以外のものの転 送に失 敗する可能性がありましたが、これは修正されました。 #1854349(Job #99762)** 「p4 graph tag」で部分的なSHA1引数を使用できるようになりました。 #1852875(Job #99206)** 末尾のスラッシュで終わる環境P4EXTENSIONSは、黙って無視する必要がありま すが、実行時エラーが発生します。 実行時の問題は修正されましたが、環境では引き続き拡張ファイル名で一致す るパターンが必要です。 #1850983(Job #99608)** 「p4extension」の引数検証を改善して、特定の組み合わせが不正な状態にな るのを防ぎます。 #1850862(Job #99597)** 現在のジャーナルを開く直前に現在のジャーナルがローテーションされた場合 に、現在のジャーナルからのジャーナルフラグメントに対するメタデータの「 プル」または「journalcopy」要求が失敗しなくなりました。 #1850807(Job #99749)** 拡張機能のインストール時にディレクトリ名の末尾のスラッシュが失敗してい ました。これは修正されました。 #1848299(Job #31585)** 'p4 fstat'は、リビジョン指定子を使用して-eフラグをファイル仕様と組み合 わせると、db.revを過度にスキャンする可能性がありました。これは修正され ました。 #1847529(Job #96725)** サーバIDが「p4d-xD」を介して新しいマスターとは異なるサーバIDに変更 されていない場合、フェイルオーバーが成功した後に以前のマスターサーバを再起 動しようとすると失敗します。 #1842553(Job #28576)** '-y'確認フラグなしで呼び出された 'p4 obliterate'コマンドは、READロック のみを取得するようになりました。 #1842404(Job #99542)** 'journalcopy -i 0'は、無関係なジャーナルの増加の直後にローテーションさ れたときに、誤って終了したジャーナルを誤って検出しなくなりました。 #1840225(Job #98278)** エッジサーバが再起動され、拡張機能のインストールとその後の同じ拡張機 能の削除の記録を含むジャーナルを再生する必要がある場合、エッジジャーナ ルの再生はその位置でブロックされ、不要になった拡張機能アーカイブをダウ ンロードしようとしましたが、これは修正されました。 #1839667(Job #75382)** モニターテーブル用の共有メモリの最大サイズが小さすぎました(2048 8K pages)。 現在、メモリアドレス空間が厳しく制限されているWindows32ビットを除くすべてのプラ ットフォームで32768 pagesになっています。 #1839424(Job #98597)** 稼働していない必須のスタンバイサーバを列挙するメッセージも、レプリケ ーションが停止しているレプリカサーバのサーバログに報告されるように なりました。 #1836925(Job #97741)** P4拡張機能ClientApi.new()は、p4 -p を介して提供されたポートを 処理できるようになりました。 #1836209 ** 割り当てルーチンを調整すると、Windowsサーバのメモリ使用量が少なくなります。 #1830413(Job #96675)** Extensionsパッケージコマンドは現在の作業ディレクトリのための「.」を受け入れなく なりました。 ディレクトリ名は、絶対パスまたは相対パスとして指定する必要があります。 #1829901(Job #99300)** 'p4 journaldbchecksums -u'によって作成されたデータベーステーブルアンロードに含 まれるジャーナルヘッダーノートに、正しいケース/ユニコードフラグとそれらがアンロ ードされたサーバの サーバルートが含まれるようになりました。 #1826907(Job #99208)** 'rdb.lbr'は、サーバのシャットダウン中にdb。*ファイルとともにロックされるようにな りました。 これにより、サーバのシャットダウン時に他のスレッドによる「rdb.lbr」の不完全なbtr ee更新が防止されます。 #1826716(Job #94998)** ユーザーの保護、アクセス許可、およびグループがキャッシュされ、同じ接続で実行され る追加のコマンド によって再利用されるようになりました。 #1823272(Job #98566、#99136)** サーバは、アンロードされたタスクストリームに存在する送信済み変更の強制削除を許可 しなくなり、 タスクストリームの変更がアンロードされない場合、削除を防ぐ変更内のファイルの正し い数を報告す るようになりました。 #1821164(Job #90948)** 'p4 pull -u --batch'によって開始されたアーカイブプルスレッドは、コミットサーバと の 接続の問題の後、アクティブなアーカイブ転送を再開しませんでした。これは修正されま した。 #1814097(Job #98909)** ストリーム編集を含む送信された変更の「p4change-df」は、削除を妨げる変 更内のストリームとファイルに関する正しいメッセージを表示するようになりました。 #1814096(Job #98925、#98910)** ストリームのみの編集を含む送信された変更では、db.changeに正しい変更ル ートフィールドが設定されるようになりました。 #1812373(Job #97309)* 膨大な数のファイルを追加する「p4reconcile」は、Rpcバッファーが大きすぎ るエラーを引き起こす可能性がありましたが、これは修正されました。 #1812099(Job #98861)** 「p4renameuser」は、名前が変更されるユーザーが排他的チェックアウトファ イル(+l)を開いたときに、孤立したロックを残します。これは修正されま した。 #1812005(Job #97309)** サーバ仕様に保存されているサービスタイプClusterServerとZookeeperはサ ポートされなくなりました。サーバ仕様でこれらのサービスタイプを割り当てると、警告 が発生します。 #1808584(Job #98852)** サーバは、トリガープログラムに提供される引数に1024引数の制限を一貫し て適用するようになりました。 #1808412(Job #98651)** サーバは、#haveリビジョン指定子と変更されたクライアントビューを使用 して、同期要求中にリビジョンとテーブルを持つことを試みる無限ループに入 ることがありましたが、これは修正されました。 #1804485(Job #90995)** タスクストリームファイルを含む変更の変更リストチェックサムは、レプリカ サーバのintegrity.csv構造化ログで「異なる」と誤って報告する可能性が ありました。これは修正されました。 #1803518(Job #95206)** 'p4unshelve'が 'partitioned'タイプのクライアントで許可されるようになり ました。 2019.1の主な新機能 ------------------ #1777138(Bug #96749)** ストリーム仕様のプライベート編集 ストリーム仕様のプライベート編集機能により、ユーザは編集対象ストリーム を他のユーザから分離してストリーム仕様の編集、テストができます。反対に 、ストリーム仕様を直接編集した場合、ユーザがストリーム仕様を保存すると すぐに有効になります。 このバージョンのリリース以前では、ユーザは'p4 stream edit'を使用してス トリーム仕様を個人的に編集できましたが、この新機能では、可視性とトレー サビリティの点で'p4 stream edit'がより改善されています。 なお、作業中チェンジリストには、ストリーム仕様、及び、関連するコード編 集の全ての作業を含めることができます。 ストリームのプライベート編集のワークフローは、'p4 edit','p4 submit','p 4 revert','p4 resolve'の'-So','-Si'または'-Sx'オプションが含まれます。 これらのオプションにより、変更が他のユーザに影響を与えるタイミングを制 御できます。詳細については、'p4 help streamcmds'を参照してください。 #1770847(Bug #98025)** エッジサーバでサブミットを行う場合のバックグラウンドアーカイブファイル 転送機能'p4 submit -b'オプションを使用すると、サブミット処理がコミット サーバのメタデータを更新した後、エッジサーバからアーカイブファイルをバ ックグラウンドで転送できます。変更内容をサブミットするユーザは、コミッ トサーバのメタデータ更新が完了するとすぐにサブミットの完了を見ることが でき、アーカイブ転送を待つ必要はありません。 アーカイブファイルは、コミットサーバで内部的に起動されるプルスレッドを 使用して、エッジサーバからコミットサーバへ送信されます。'p4 submit -b' を有効にするには、すべてのサーバで新しい構成可能変数'submit.allowbgtra nsfer'を設定する必要があります。'p4 submit -b'の動作は、新しい構成可能 変数'submit.autobgtransfer'を'1'に設定することにより、エッジサーバで実 行される'p4 submit'に対して暗黙的に'-b'オプションを付与することができ ます。新しい'p4 pull -u -t 'コマンドは、失敗したアーカイブ転送 のリカバリに使用することができます。P4コマンドリファレンスの'p4 help s ubmit'及び、[Helix Coreサーバ管理者ガイド: マルチサイト展開]の'エッジ サーバでサブミットを行う場合のバックグラウンドアーカイブファイル転送機 能'を参照してください。 #1776989(Bug #48387)** Helix Core Server Extensionsは、完全にサポートされたトリガーの代替手段 です。この拡張機能を使用する利点については、'p4 help extension'、'Heli x Core Server管理者ガイド:基本'の'トリガーおよび拡張機能'の章を参照し てください。注:Windows Serverでは拡張機能は使用できません。 #1747154(Bug #96951)**グラフディポのデータモデルが[Git LFS locks]を サポートするようになりました。これらのロックは排他的であり、Git LFSフ ァイルとやり取りするすべての'p4'コマンドで使用されます。 ファイルタイ プオプション'+l'のロックとは異なり、'これらのロックは、それぞれ'p4 gra ph lfs-lock'、'p4 graph lfs-unlock'および'p4 graph lfs-locks'によって 取得、解放、およびリストされます。 #1743677 * ** *** **** TCPウィンドウサイズの自動調整がデフォルトで有効になりました。 この機能により、TCPスタックはネットワーク送信および受信バッファサイズ を管理できるようになり、特に低速で遅延の大きいネットワークをより効率的 に使用できるようになります。 この動作は、構成可能変数'net.autotune'を'0'に設定することにより、クラ イアント、プロキシ、ブローカ、およびサーバで無効にできます。現在、デフ ォルトは'1'(有効)となります。クライアントはこれを'p4 set'で設定する か、P4CONFIGファイルに構成可能変数を追加することで設定でき、サーバは'p 4 configure'で設定できます。Windowsベースのプラットフォームでは、送信 バッファーのサイズは自動調整されませんが、構成可能変数'net.tcpsize'を 手動で構成できます。 #1743672(Bug #95158)** 新しい'db.storage'テーブルは、'db.archmap'に代わって、サーバ上のアーカ イブファイルのリンク数を提供します。この追跡により、遅延コピーの識別の 複雑さが軽減され、ファイルタイプ識別子'+Sn'のファイルを遅延コピーでき るようになり、多くのマージ履歴を持つサーバで'p4 obliterate'のパフォー マンスが大幅に向上します。 ほとんどはサーバの再起動後にバックグラウンドで実行されますが、'db.arch map'から'db.storage'へのアップグレードは簡単ではない場合があります。新 しいテーブルも潜在的にサイズが大きくなることに注意してください。この変 更は、レプリカ構成のサーバアップグレードに関する推奨事項に影響します。 このリリース用に更新されたアップグレードノートセクションを参照してくだ さい。 2019.1のテクノロジープレビュー機能 ------------------ #1750665(Bug #21301)* Helix Core Client Extensionメカニズムにより、クライアントはLuaプログラ ミング言語で記述されたスクリプトを実行できます。 'p4 help clientextens ionintro'を参照してください。 2019.1のその他の新機能 ------------------ #1775358(Bug #97011)** ストリームの更新に関連付けられたチェンジリスト番号がスペックディポのレ コードに含まれるため、ストリーム編集の追跡が改善されました。 #1774452 ** 環境変数 P4LANGUAGE 定義が更新され、[ユーザの言語タグとオプションの地 域]に応じて P4LANGUAGE を設定する必要があることが示されました。例とし て、$LANGが'en-US.UTF-8'の場合、P4LANGUAGE=en-US を設定します。P4Dサー バのメッセージ翻訳がある場合、翻訳メッセージファイルをメッセージデータ ベースへ再シードする必要があることに注意してください。 #1771834(Bug #92000)** 'p4 archive'コマンドには、新しい'-z'オプションが追加されました。このオ プションを使用することで、ディスクスペースの使用量を削減できます。詳細 は、コマンドリファレンスの'p4 archive'を参照してください。 #1764315(Bug #96321)** 'p4 integrated'コマンドへ'-s change'および'--into-only'フラグを追加し て、出力結果を改善しました。 #1763210(Bug #96748)** 'p4 streamlog'は、ストリームの変更履歴を表示します。 #1758544(Bug #96970)** エッジサーバを連結できるようになりました。詳細は、[Helix Coreサーバ管 理者ガイド: マルチサイト展開]の'エッジサーバ同士の連結'を参照してくだ さい。 #1756090(Bug #96667)** Windowsで複数のプロセッサグループを利用するサポートが追加されました。 'sys.threading.groups'構成可能変数を'1'に設定することにより有効になり ます。詳細は、コマンドリファレンスを参照してください。 #1753991(Bug #93328)** すべてのサーバタイプで、サーバ仕様のDistributedConfigフィールドに、デ フォルト値以外の値が設定されている各構成可能変数用の行が表示されます。 このフィールドで、値を編集したり、新しい行を追加して、別の構成可能変数 をデフォルト値以外の値に設定したり、その行を削除して、構成可能変数の値 をデフォルト値に戻したりすることができます。 #1747051(Bug #96666)** 'p4 switch'には新しいフラグ'--no-sync'があり、ストリームの切り替えを許 可しますが、切替先のストリームを直ぐに同期しません。 #1740349(Bug #61064)** スーパ権限ユーザやオペレータからの接続は、接続制限を超えた場合でも拒否 されなくなりました。この制限は、'server.maxcommands'構成可能変数によっ て定義されます。これを無効にするには、新しい設定可能変数'server.maxcom mands.allow'を0に設定します。『Helix Core Server管理者ガイド:基本』の '同時接続を制限する'を参照してください。 #1735885(Bug #373)* 'p4 -s'からの詳細なメッセージ出力には、実際のエラーレベル'warning、err or、fatal'が表示されます。 'p4'コマンドは、'error'と'fatal'で'1'を返します。既存のスクリプトが以 前の動作に依存する場合、'-Zapi=85'でAPIレベルを設定して、全てのinfo以 外の出力にエラータグを付けることができます。 #1735085(Bug #96336)** 新しい構成可能変数'push.unlocklocked'を1に設定すると、プッシュの失敗時 に、プッシュの一部としてロックされたファイルのロックが自動的に解除され ます。 #1733878(Bug #66258)* ** *** **** 圧縮コードの改善により、バイナリファイルに対する'p4 sync'と'p4 verify' 、チェックポイント(作成と再生)のパフォーマンスが13〜21%向上しました 。 #1726148(Bug #51996)* ** 'p4 reconcile'には、ファイルタイプの変更を検出できる新しい'-t'フラグが 追加されました。 #1723334(Bug #76162)** 'p4 -Ztag info'は、'アンロードディポ'の存在に応じて、'unloadSupport'タ グへ'enabled'または'disabled'のいずれかの値をレポートするようになりま した。 ---------------------------------------------------------------------- 2019.1 Patch 4のバグ修正 ------------------------ #1875389 (Bug #100119, #100351 ) ** 'p4 reconcile -t'は、保存する必要があるファイルタイプ修飾子を削除して いましたが、この問題は修正されました。 #1865912 (Bug #100130) ** 書き込み権限のないディレクトリにファイルを複製する際のクラッシュを防ぎ ます。 #1865694 (Bug #99021) ** ストリーム仕様'import+'で、'import+ path...'が修正されました。 ---------------------------------------------------------------------- ---- 2019.1 Patch 3のバグ修正 ------------------------ #1862232 (Bug #100081) ** 後方互換性のために、エッジサーバで'p4 submit -Af'を有効にしました。 '-Af'には'-Sx'パラメーターと同じ機能があります。'-Sx'を優先し、'-Af'を 使用することは推奨しません。 #1862231 (Bug #100065) ** チェンジリスト番号なしで実行された'p4 shelve -d'は、使用方法に関するエ ラーメッセージを返却します。 #1860142 (Bug #99990) ** 後方互換性のために、'p4 submit'パラメーター'-Af'を再度有効にしました。 '-Af'には'-Sx'パラメーターと同じ機能があります。'-Sx'を優先し、'-Af' を使用することは推奨しません。 #1858257 (Bug #99978) ** アップグレードストレージウォーカーは、排他モードで誤ってウォーカーロッ クを取得し、アップグレードの第2フェーズの間で'安全な'コマンドをブロッ クしましたが、この問題は修正されました。 #1854522 (Bug #99733) ** チェンジリストにストリーム仕様があり、チェンジリストが保留され、ストリ ーム仕様が現在のワークスペースで開かれていない場合、チェンジリスト仕様 を変更しようとするとエラーメッセージが表示されました。現在は、チェンジ リスト仕様のストリームフィールドが変更された場合にのみエラーが出力され ます。 #1848589 (Bug #99557) ** 'p4 describe -S clno'は、チェンジリストで開かれたが保留されていないス トリーム仕様を表示していました。現在は、'p4 describe -S clno'は、チェ ンジリストで保留されている場合にのみストリーム仕様を表示します。'p4 de scribe clno'は、チェンジリストで編集のために開かれた場合、またはチェン ジリストとともにサブミットされた場合、ストリーム仕様を引き続き表示しま す。 #1808412 (Bug #98651) ** Helix Coreサーバは、'#have'リビジョン指定子と変更された'クライアント ビュー'を使用した同期要求中に「rev」テーブルと「have」テーブルを結合し ようとする無限ループに入る可能性がありましたが、この問題は修正されまし た。 ---------------------------------------------------------------------- 2019.1 Patch 2のバグ修正 ------------------------ #1844397(Bug #75382)** プロセス管理のモニタテーブルで使用する共有メモリの最大サイズが小さすぎ ました(2048 8K page)。メモリアドレス空間が厳しく制限されているWindow s 32ビットを除いて、すべてのプラットフォームで32768ページです。 #1840313(Bug #99534)** ストリーム仕様が番号付きチェンジリストに保留され、その後、チェンジリス トの編集を元に戻すと、ストリーム仕様名が変更されていなくても、ストリー ム仕様が開いていないという警告が表示されます。 これは、ダウンストリー ムアプリケーションにとって問題でした。 名前が変更された場合でも警告が生成され、変更が保存されないように修正さ れました。 ただし、名前が変更されていない場合、警告は発行されません。 また、このケースの仕様変更出力のストリームフィールドに'Shelved, not op ened'というコメントを追加しました。 #1838469(Bug #99468)** ストリーム仕様が番号付きチェンジリストで開かれ、ストリーム仕様が保留さ れ、かつ、オープンされたストリーム仕様が元に戻された、ストリーム仕様が 保留から削除された場合、'p4 change -o clno'は、まだチェンジリストにス トリーム仕様を表示していました。 この問題は修正され、新しい動作ではチェンジリストにストリーム仕様が表示 されなくなりました。 #1836989(Bug #99416)** 'p4 shelve -As 'および'p4 unshelve -As 'は、正当な コマンドの使用方法ではありませんが、許可されていました。しかし、現在は 、どちらの場合も使用エラーが返されるようになり、使用できなくなりました 。 #1836483(Bug #99413)** チェンジリスト内のストリーム仕様では、'p4 -ztag change -o clno'および' p4 -ztag changes'のタグ付き出力で'streamState'タグが'streamOpened'、's treamShelved'、'streamOpenedShelved'、または'streamSubmitted'の値と一 緒に報告されるようになりました。 #1834884(Bug #99267)** トリガーで'p4 submit -b'を使用すると、Linuxプラットフォーム上で問題が なくても、トリガーがエラーステータスを返すことがありました。この問題は 修正されました。 #1834169(Bug #99391)** 'p4 -ztag stream -o'および'p4 -ztag describe -S clno'の出力結果にスト リーム仕様の要約を追加しました。 'p4 describe -S clno'の出力結果にストリーム仕様の差分を追加しました。 差分は、指定されたチェンジリスト番号のストリーム仕様とヘッドバージョン の差分が確認できます。 #1831717(Bug #99288)** 'p4 revert -So'コマンドは、保留、または、サブミット済チェンジリストか らストリーム名を誤って削除する場合がありましたが、修正されました。 #1831716(Bug #99275)** 'MsgDm :: StreamMustResolve'メッセージは、警告からエラーに変更されまし た。 #1832439(Bug #98561)** 'p4 graph receive-pack'を変更して、タグを削除できるようにしました。こ れにより、GitからGit-connectorへのプッシュによるタグ削除の問題も修正さ れます。git push --delete #1830302(Bug #99247)** ストリーム仕様のサブミットと保留のトリガーを有効にしました。オープンさ れたストリーム仕様がサブミットまたは保留され、'//stream/name'、または' //stream/name/...'のいずれかのファイル仕様でトリガーが定義されている場 合、トリガーが呼び出されます。トリガー変数 %stream% は、ストリーム名称 が設定されます。 #1829838(Bug #99300)** 'p4 journaldbchecksums -u'によって作成されたデータベーステーブルアンロ ードに含まれるジャーナルヘッダーノートには、正しい'case/unicode'フラグ と、アンロード元サーバのサーバルートが含まれるようになりました。 #1830740(Bug #99382)** Helix Core Extensionsのサポートは、競合するツールチェーンの懸念により 、Windowsサーバでは無効になりました。拡張機能はLinuxおよびMacで引き続 き完全にサポートされます。 #1828396(Bug #99271)** ストリーム仕様の変更と一致しないチェンジリストで'p4 stream -o'が呼び出 された場合、最新のストリーム仕様が返されます。新しい動作は、指定された チェンジリストの前の最新バージョンを返すことです。 #1827416(Bug #98909)** ストリーム編集を含むサブミット済チェンジリストに対する'p4 change -df' コマンドの実行は、チェンジリスト内のストリーム仕様とファイルの削除を妨 げるメッセージを表示するようになりました。 #1825235(Bug #99035)** 複数のストリーム仕様を同じシェルフ番号に保留できましたが、この問題は修 正されました。 #1825187(Bug #99106)** ユーザは、チェンジリスト内の特定ファイルへのリスト権限がなくても、その チェンジリスト内の全てのファイルに共通のディレクトリへのリスト権限があ る場合、'p4 changes'または'p4 change -o'を使用して制限付きのサブミット 済チェンジリストの説明を閲覧することができましたが、この問題は修正され ました。 #1824517(Bug #98988)** 'p4 streamlog'は、変更されたフィールドに関係なく、すべてのストリーム仕 様の変更を正しく報告するようになりました。 #1824117(Bug #99184)** 'p4 shelve -As -d'は、保留からストリーム仕様を削除するようになりました 。これにより、返されるメッセージは正しいものになりました。 #1823281(Bug #99158)** リスト権限のみを持つユーザが'p4 diff2'コマンドを実行すると、クラッシュ が発生する可能性がありましたが、この問題は修正されました。 #1822891(Bug #98978)** 'p4 switch'コマンドは、エラー時に正しいターゲットストリーム名をレポー トするようになりました。 #1822172(Bug #99042)** 'p4 stream -o //streamname@changelist'コマンドには、全てのフィールドの 最新バージョンではなく、指定されたバージョンが含まれるようになりました 。以前は、'Paths'、'Parent'、および'Type'フィールドのみが指定バージョ ンであり、他の全てのフィールドは最新バージョンでした。この修正は、P4D 19.1以降のHelix Coreサーバで作成されたデータにのみ適用されます。 #1822042(Bug #98542)** 一時ロックにより、RCSファイルへの同時更新が防止されるようになりました 。 #1821878(Bug #99077)** 競合状態により、使用後にロック(.lck)ファイルが残ることはなくなりまし た。 #1821475(Bug #99141)** バックグラウンド転送を使用して'p4 submit -i'をエッジサーバに対して実行 すると、変更をサブミットできませんでしたが、この問題は修正されました。 #1821208(Bug #98861)** 'p4 renameuser'コマンドは、名前を変更するユーザが排他チェックアウトで ファイル(+l)を開いていた時に、孤立したロックを残す可能性がありました が、この問題は修正されました。 #1820930(Bug #99117)** 'p4 protects -M'コマンドは、P4AUTH(統合認証)環境で正しい結果を表示し ていませんでした。さらに、このコマンドのパス処理は、パスの一部だけでは なく、提供された全てのパスに一致する保護のみを考慮していましたが、この 問題は修正されました。 #1820503(Bug #99098)** ストリーム仕様に関連する保留メッセージを更新しました。現在は、オープン されたストリーム仕様が暗黙的または明示的に保留されるように指定されたが 、チェンジリストにない場合、適切なエラーメッセージが表示されます。 #1819042(Bug #98967)** 引数なしの'p4 shelve'コマンドは、オープンされたストリーム仕様のシェル フに失敗していましたが、この問題は修正されました。 #1818502(Bug #99050)** db.storage アップグレードプロセス(フェーズ1)は、転送レプリカ上で誤っ て実行されていました。この問題は修正されました。 #1818437(Bug #99010)** 'p4 stream -o //streampath@=shelf'コマンドは、'streampath'がストリーム 名、'shelf'が保留されているチェンジリストのチェンジリスト番号で指定す ることで、保留されたストリーム仕様を表示するようになりました。 #1818393(Bug #99041、#99074)** 'p4 shelve'は、ストリーム仕様のみが保留されたときに、保留ファイルに関 するメッセージを出力していました。これは修正されました。 #1818105(Bug #99075)** 'p4 reopen'には、単一のコマンドでチェンジリスト間で開いている'ストリー ム仕様'と'ファイル'を移動するための'-Si'フラグが追加されました。 #1816910(Bug #98925、#98910)** ストリームのみの編集を含む'サブミット済チェンジリスト'の'db.change'テ ーブルに正しい'root'フィールドが設定されるようになりました。 #1816226(Bug #99003、#99022)** 'p4 describe -S'コマンドは、保留された'ストリーム仕様'に関する正確な情 報を常に表示できませんでしたが、この問題は修正されました。 #1814927(Bug #98586)** P4D 19.1へのアップグレード中に生成される'storage error file'は、エラー が検出されない場合でも常に作成されていましたが、この問題修正されました 。 #1814802(Bug #97697)** 'p4 shelve -d'コマンドは、不要な'保留ファイル'の削除に失敗する可能性が ありましたが、この問題は修正されました。 #1814745(Bug #98294)** エッジサーバに対して実行される'p4 storage -u'は、エッジサーバの'保留ス トレージレコード'のみを更新します。 #1814074(Bug #96617)* スレッド化された'並列同期'が一時ファイルの'chmod'または'リネーム'に失 敗することがありましたが、この問題は修正されました。 #1813039(Bug #98855)** 'p4 graph lfs-lock'コマンドから渡される相対ファイルパスが、正しく処理 されるようになりました。 #1813017(Bug #98710)** 'p4 grant-permission'のヘルプテキストを明確にしました。 #1810430(Bug #98540)* P4CLIENTPATHが設定されている場合、ワークスペースが、サンドボックス外の パスにアクセスするためにたどることができるシンボリックリンクを作成でき なくなりました。 #1809639(Bug #97003)** 'p4 diff -As'および'p4 diff2 -As'を使用すると、ストリームの仕様を比較 できます。保留されたストリームは、'@='表記で参照できます。 ---------------------------------------------------------------------- 2019.1 Patch 1のバグ修正 ------------------------ #1808413(Bug #98605)** タスクストリームから'import+ファイル'をサブミットすると、タスクストリ ームが破損する可能性がありましたが、この問題は修正されました。 #1807936(Bug #96532)** 'p4 describe'は、追加されたファイルの以前のバージョンのファイルタイプ を誤って表示していましたが、この問題は修正されました。 #1807617(Bug #98544、#97979)** すべてのストリームの更新により、'チェンジリスト番号'を消費するだけでな く、'関連するチェンジリスト'が作成されるようになりました。 #1806502(Bug #98766)** 構成可能変数'submit.allowbgtransfer=1'は、'-batch'を使用したレプリカの プルスレッドは'ファイルコンテンツ'をクラッシュさせましたが、この問題は 修正されました。 #1805822(Bug #98424)** いくつかのコマンドでは、ユーザが接続しているエッジサーバだけでなく、す べてのアップストリームエッジサーバへログインする必要がありましたが、 この問題は修正されました。 #1805680(Bug #97885)** 'p4 graph lfs-lock'は、LFS以外のグラフディポのファイルでは許可されなく なりました。 #1805524(Bug #97669)* ** *** **** 'TLS1.1'以上のハンドシェイクでネゴシエートされた'SSL接続'は、平文とし て拒否されましたが、この問題は修正されました。 ネゴシエーションに成功すると、ネゴシエーションに使用されるバージョンに 関係なく、'TLS1.2'まで使用されることに注意してください。 #1803226(Bug #98543)** 別のユーザが、現在オープン中の'ストリーム仕様'と同じ変更を行った場合、 サブミット時に'StreamNeedsResolve'メッセージが発生しましたが、この問題 は修正されました。 #1802979(Bug #94895)** 条件によっては、連続した'タスクストリーム'が作成、または、ブランチされ ると、スーパーユーザがチェンジリスト内のファイルと一緒に変更を削除する ことがありましたが、この問題は修正されました。 #1802016(Bug #97847)** 'p4 undo --repo'コマンド中にLFSロックをテストする場合、'ターゲット'参 照を正規化します。 #1799999(Bug #98500)** '大きいサイズの説明'または'多くの統合パス'を含む'p4 filelog'の結果は、 'Rpcバッファー'が大きすぎましたが、修正されました。 #1799583(Bug #94400)** 'p4 help-graph client'は、グラフディポの適切な構文行を表示するようにな りました。フラグの説明を見つけるためのリファレンスとハイブリッドシナリ オの仕組みに関する説明が含まれています。 #1798894(Bug #97895)** 場合により、'p4 -ztag stream -o //streampath@have'コマンドは、ストリー ム名が出力されたメッセージを表示しますが、代わりにクライアント名が報告 されていました。 #1798095(Bug #98367)** 'p4 unshelve'コマンドが、現在の'ユーザ'と'ワークスペース'がアクセスで きないファイルがある'保留'で動作する場合、ファイルリストの最初のファイ ルがリスト内の各ファイルに対して表示されましたが、この問題は修正され、 最初のファイルの代わりに各ファイル名が表示されるようになりました。 #1798061(Bug #97962)** 解決する必要のあるオープン中のストリーム仕様の'フィールド'がない場合、 'p4 resolve -So'には'No stream fields to resolve.'と表示されるようにな りました。 ---------------------------------------------------------------------- 2019.1 のバグ修正 ------------------------ #1787364(Bug #98256)** 'p4d -xu'コマンドは、実際には'スタンバイ'または'転送スタンバイ'サーバ でアップグレードを実行しなくなりました。スキーマのアップグレードは、マ スターサーバからジャーナルコピーされるときに適用されます。'p4d -xu'コ マンドは、新しくメジャーリリースされたバイナリを使用して誤ってサーバを 起動することにより、意図せずにサーバのアップグレードすることを防ぐため に、必要とされています。 #1782963(Bug #98117)** 'p4 pull'コマンドは、バージョン2018.2でのパフォーマンス強化によって競 合状態が発生したため、'spec depot'のアーカイブ複製に失敗する可能性があ りましたが、この問題は修正されました。 #1782803(Bug #95173)** 'p4 describe'コマンドは、'p4 switch'コマンドによって作成された'shelved changelists'に対して実行するとエラーを報告しましたが、この問題は修正 されました。 #1781879(Bug #92961)** 構造化ログ'auth.csv'へ記録された成功したOTPベースの2FAイベントログは、 失敗として誤って記録されましたが、この問題は修正されました。 #1780867(Bug #97063)* 並列同期において、クライアントからの'-C charset'フラグが優先されるよう になりました。 #1780019(Bug #97125)** 'p4 unshelve'および'p4 revert'の同期時間が更新され、'p4 reconcile -m' の動作が修正されました。 #1777076(Bug #98218)** moved-from'のファイルが、'edge/commit'環境の最新リビジョンで削除された 際、移動元ファイルを元に戻すと、初期化されていないデータにアクセスした ために予測できない結果が生じる可能性がありましたが、この問題は修正され ました。 #1775117(Bug #98350)** 'p4d -xu'コマンドは、'-Joff'オプションでは実行できなくなりました。一部 のサーバアップグレード手順では、メタデータの変更を行うため、ジャーナル を再複製する必要があります。これは、ジャーナリングを無効にしてアップグ レードを実行した場合には発生しません。 #1773233(Bug #97211)** 取り消しアクションを含む保留されていない'ktext'ファイルをサブミットす ると、不正な改ざんエラーが発生する可能性がありましたが、この問題は修正 されました。 #1772348(Bug #97898)* スペースを含む'DepotMap'パスでリモート仕様を使用すると、'p4 clone'コマ ンドが失敗することがありましたが、この問題は修正されました。 #1768961(Bug #97460)** 新しいスタンバイまたは転送スタンバイサーバを作成する場合、'mandatory' オプションは許可されなくなりました。スタンバイまたは転送スタンバイサー バのジャーナルコピースレッドが'ジャーナルコピー'元のサーバ上のジャーナ ルに追いついた後、HAスタンバイサーバに'mandatory'オプションを設定でき ます。 #1768266(Bug #98019)** 最新ではないストリーム仕様またはプライベートで編集されているストリーム 仕様では、編集されたフィールドまたは編集中のフィールドにコメントが表示 されなくなりました。 #1766398(Bug #97896)** グラフディポコマンドは、同時に最大128個のパックファイルを開くようにな りました。 #1765852(Bug #97211)** 'p4 fstat'コマンドは、削除されたファイルを再追加する際、無効、または、 欠落している所有リビジョンの値を表示することがありましたが、この問題は 修正されました。 #1763055(Bug #95105)** 大きなジャーナルフラグメントは、デフォルトでジャーナルコピーに送信され るようになりました。ジャーナルコピーを実行するサーバ(通常はスタンバイ サーバ)の定義どおりに構成可能変数'rpl.jnl.batch.size'を使用して、ジャ ーナルコピーに送信されるジャーナルフラグメントを調整できます。 #1758633(Bug #97773)** 'p4 receive-pack'は、新しいリポジトリへの強制プッシュを通常のプッシュ へダウングレードしましたが、この問題は修正されました。 #1757383(Bug #96635)** 'p4d -v'コマンドで設定された'P4DEBUG'の設定は、数値以外の値の後に追加 オプションが続く場合、誤って認識される可能性がありましたが、この問題は 修正されました。 #1745310(Bug #96271)** 特定の条件下で、旧バージョンのWindowsクライアントアプリケーションを使 用した'オートチューニング'対応環境のエッジサーバへのサブミットがクライ アント上でハングすることがありましたが、この問題は修正されました。 #1743439(Bug #96758)** 'p4 failover'は、フェイルオーバー後にスタンバイがその役割に対して適切 にライセンスされていることを確認するようになりました。 #1742700(Bug #93206)** コマンドが'MaxOpenFiles'未満でオープンされた場合でも、'MaxOpenFiles'グ ループの制限を適用すると、'p4 reconcile'コマンドは'Opening too many fi les'でエラー終了しましたが、この問題は修正されました。 #1739928(Bug #95194)** 例外リストを持つグラフディポのファイルに対する'p4 delete'は、変更がサ ブミットされた後でも例外リストとして残ることがありましたが、この問題は 修正されました。 #1734228(Bug #96791)** フェイルオーバーの実行前に、'p4 failover'コマンドは、スタンバイサーバ 上で完了していないアーカイブファイルコンテンツの転送がないことを確認す るようになりました。 #1732870(Bug #94976)** 'p4 revert'コマンドは、ジャーナル処理をより少ないトランザクションでバ ッチ処理するようになり、このコマンドのレプリケーションがより効率的にな りました。 #1728271(Bug #96335)** Admin権限ユーザは、失敗した'p4 push'コマンドによってロックされたファイ ルロックを解除できませんでしたが、この問題は修正されました。 #1726773(Bug #93725)** インポートパスが単一のパスで指定されている場合、バーチャルストリームは ストリームの親の親から誤ってインポートしていましたが、インポートされた パスがバー チャルストリームの親からのパスになるように、この問題は修正されました。 #1726440(Bug #96818)** '#have'への同期、かつ、クライアントビューに'ditto mappings'が含まれて いる場合、クライアントの所有レコードが誤って上書きされる可能性がありま したが、この問題は修正されました。 #1726251(Bug #96545)** 'p4 user -D'コマンドは、'-F'フラグ単体では意味しなくなりました。ユーザ 、クライアントワークスペースをグローバルに削除し、グループおよび保護テ ーブルから削除するには、両方のフラグを'p4 user -D -F'で指定する必要が あります。 #1723981(Bug #96826)** 'p4 failover'コマンドは、'LEOF'がスタンバイによってジャーナルコピーさ れた最後の整合点まで進められていなかった場合、または、マスターサーバが フェイルオーバに参加していないか、フェイルオーバ時に必須スタンバイサー バがアクティブジャーナルコピーをしていない場合、'pull -L'スレッドが作 業を完了するのを待ってハングしなくなりました。 #1722715(Bug #92743)* クライアント側のUTF8検証では、マルチバイト文字の途中で終了したファイル を検出できませんでしたが、この問題は修正されました。 #1722358(Bug #96273)** 特定のDVCSシナリオでは、revレコードのカウントに関連する'無効なzipファ イル形式'エラーが発生する可能性がありましたが、エラーチェックの改善に より、DVCS操作の送信側で、より包括的なエラーメッセージが生成されるよう になりました。 #1720213(Bug #96546)** 'p4 clean'コマンドは、ワークスペース上のファイル更新を'MaxOpenFiles'グ ループの制限に対して誤ってカウントし、コマンドが失敗していましたが、 この問題は修正されました。 #1718223(Bug #94828)** グラフディポへのコミット時にSHAの文字がすべて数字の場合、SHAの全ての数 位をチェンジリスト番号であると仮定して同期が失敗しましたが、この問題は 修正されました。 ---------------------------------------------------------------------- 2018.2の主な新機能 ------------------ #1688531(Bug #95155)** 新しい'p4 failover'コマンドを使用して、マスター(またはエッジ)サーバ を、マスターサーバからジャーナルコピーしているスタンバイ(または転送ス タンバイ)サーバへフェイルオーバーできます。このコマンドは、スタンバイ サーバで実行し、次のように、フェイルオーバープロセスの多くの面を調整し ます。 ・スタンバイサーバで監視('p4 monitor')が有効になっていることを確  認します。 ・'スタンバイサーバの'pull -L'スレッドと調整して、スタンバイサーバ  がマスターサーバからコピーされたジャーナルメタデータを確実に適用  するようにします。 ・'直前に更新されたクラシックディポのファイルのコンテンツを確認し  ます。 ・'フェイルオーバー後に使用されるジャーナルとして、最新のジャーナ  ルコピーを指定の場所に移動します。 ・'スタンバイサーバでのジャーナリングを有効にします。 ・'マスターサーバの構成を更新します。 ・'スタンバイサーバの'serverID'をマスターサーバの'serverID'へ更新  します。 ・'スタンバイサーバを新しいマスターサーバとして再起動します。 マスターサーバがフェイルオーバーに参加する場合も、'p4 failover'コマン ドが調整します。 'マスターサーバを静止します。マスターサーバで新しいコマンドを拒否 し、既存のコマンドが完了するまで一定時間待ってから、残りのコマンド を停止します。'スタンバイサーバの'journalcopy'および'pull -u'スレ ッドと調整して、スタンバイサーバにマスターサーバからの最新のメタデ ータとファイルコンテンツがすべて含まれるようにします。'マスターサ ーバを停止します。 'p4 failover'コマンドが中断されたり、エラーが発生した場合、コマンドは その時点までに行われたことを取り消そうと試みます。しかし、コマンドがマ スターサーバを停止した場合、マスターサーバは再起動されません。 フェイルオーバー後にマスターサーバとして機能するには、必要に応じてスタ ンバイサーバ上にライセンスファイルが必要です。 エッジサーバをフェイルオーバーする前に、そのサービスユーザは、エッジサ ーバの各スタンバイに対して構成可能変数'P4TICKETS'で指定されたファイル を使用して、コミット(またはマスター)サーバにログインする必要がありま す。また、必要に応じて、エッジサーバの各スタンバイに対して構成可能変数 'P4TRUST'で指定されたファイルを使用して、サービスユーザのコミットサー バとの信頼を確立する必要があります。 'p4 failover'コマンドは、マスターサーバの構成可能変数の一部を更新して 、スタンバイサーバが実行されていた環境でコマンドが起動したときに期待ど おりに機能するようにします。更新される可能性のある構成可能要素は次のと おりです。 P4AUDIT client.readonly.dir server.depot.root P4JOURNAL client.sendq.dir server.extensions.dir P4LOG journalPrefix server.locks.dir P4ROOT pull.trigger.dir statefile P4TICKETS rpl.journal.ack P4TRUST rpl.journal.ack.min エッジサーバがフェイルオーバーに参加していない可能性があるため、エッジ サーバをフェイルオーバーする場合、その構成可能要素の更新をコミット(ま たはマスター)サーバに反映できません。 フェイルオーバー後、エッジサーバの更新された構成可能変数をコミットサー バで変更する必要があります。 新しい'p4 failover'コマンドをサポートするために、db.serverテーブルに3 つのフィールド、[Options]、[ReplicatingFrom]、および、[FailoverSeen]が 追加されました。[Options]、および、[ReplicatingFrom]フィールドはサーバ の仕様の一部であり、'p4 server'コマンドを使用して変更できます。[Replic atingFrom]フィールドは、スタンバイサーバに必要です。 特に注意すべきは、サーバ仕様の[Options]フィールドの'mandatory'オプショ ンです。スタンバイサーバに設定すると、そのサーバは常に、メタデータをレ プリカ(スタンバイサーバ以外)に複製するタイミングを決定する計算に参加 します。 つまり、メタデータは、他のレプリカサーバへ複製される前に、全ての[manda tory]オプションのスタンバイサーバへジャーナルコピーされる必要がありま す。[mandatory]オプションのスタンバイサーバが必要な場合は、'mandatory' オプションを使用して最初から展開することをお勧めします。スタンバイサー バのジャーナルコピースレッドがマスターサーバに追いついた後、マスターサ ーバ上のスタンバイサーバのサーバ仕様で'mandatory'オプションを設定でき ます。 マスターサーバがフェイルオーバーに参加しない場合、'p4 failover'コマン ドが実行されるスタンバイサーバは、[mandatory]オプションのスタンバイサ ーバでなければなりません。 これにより、フェイルオーバー後のレプリケーションがマスターサーバと一貫 性を保つことが保証されます。 通常、[P4ROOT]ディレクトリには、この新しい機能に関連するジャーナルの位 置を含むいくつかの新しいファイルがあります。それらは'stateLEOF'、'stat efailover'、および'statepullL'ファイルです。 'stateLEOF'ファイルには、マスターサーバのレプリカ('スタンバイサーバ' 以外)に複製された最後のトランザクションのジャーナル位置が含まれます。 このファイルは、少なくとも1つが[mandatory]オプションのスタンバイサーバ である場合、マスターサーバの全てのスタンバイサーバに存在します。 'stat eLEOF'ファイルが存在する場合、'pull -L'スレッドは、そのジャーナル位置 を通じてジャーナルコピーされた物のみをスタンバイサーバのメタデータに適 用します。 これにより、スタンバイサーバ上の'メタデータ'と新しいマスターサーバとの 一貫性が確保され、古い'マスターサーバ'の参加なしにフェイルオーバーが発 生します。 'statefailover'ファイルは、不要になると自動的に削除されます。'フェイル オーバー'後も保持され、残りのスタンバイサーバの'ジャーナルコピー'の一 貫性が確保されます。' statefailover'ファイルを自動的に削除できるように、全てのスタンバイ(お よび転送スタンバイ')サーバのサーバ仕様にて、'ReplicatingFrom'フィール ドに'master server'が定義されている必要があります。 追加情報は、'p4 help failover'および'Helix Core Server Administrator G uide'の'Backup and recovery'の章の'Failover'セクションから入手できます 。 ---------------------------------------------------------------------- 2018.2のテクノロジープレビュー機能 ------------------ #1690230(Bug #48387)** 「Helix Core Extension」メカニズムは、Luaプログラミング言語で記述され 、メタデータやその他のリソースでパッケージ化された「管理者提供のスクリ プト」をサーバが実行できるようにする機能です。 サーバはこれらのプログラムをサーバローカルで実行する、"自動複製"と"プ ログラムAPI"を備えたポータブルなRuntimeを提供します。ディポおよびリポ の所有者は、スーパーユーザが関与することなく、所有する領域で動作するよ うに拡張機能を構成できます。 Runtimeは、「p4 --script」フラグを介してコマンドラインクライアントでも 使用できます。詳細については、「p4ヘルプ拡張機能」を参照してください。 注:Windows Serverでは拡張機能は使用できません。 ---------------------------------------------------------------------- 2018.2のその他の新機能 ------------------ #1707299 (Bug #91576) ** 別のクライアントによって'排他的にロックされた'ファイルの保留を解除する と、'p4 unshelve'は'info'ではなく'warning'としてエラーメッセージを報告 するようになりました。 'p4 edit/delete/reconcile/integ'の出力メッセージも同様に変更されました 。この変更はメッセージタイプにのみ影響し、コマンドの戻り値は変更されて いません。古い動作でメッセージを取得するには、p4オプション'-Zapi=[84 o r earlier]'を使用します。 #1701226 (Bug #94362) ** 'graph rebase'コマンドは、コミットを複製しなくなりました。リプレイ時に 差分のないコミットはスキップされるようになりました。 #1700123 (Bug #94681) ** 全ての'graph reference triggers'は、'%refType%'および'%refFlags%'のプ レースホルダーに入力されます。 #1697842 (Bug #96191) ** 新しい'auth-invalidate'トリガーが追加されました。このトリガーは、ユー ザーのチケットが'p4 logout'によって明示的に無効化されたときに発生しま す。 #1693278 (Bug #95956) ** 並列同期'db.sendq'テーブルがパーティション分割されるようになりました。 クライアントごとのテーブルが作成されるディレクトリに構成可能変数'clien t.sendq.dir'を設定することにより、並列同期によるロック競合を減らします 。指定したディレクトリは、パーティションディレクトリ'client.readonly.d ir'と同じに設定できます。 #1689195 (Bug #96066) ** 'p4 monitor show'コマンドは、ローカルジャーナルからのメタデータを適用 するスレッドに対して常に'pull -L'を表示します。'-L'フラグを表示すると 、このスレッドを他のプルスレッドと区別するのに役立ちます。 #1685442 (Bug #95168) ** 'p4 undo'コマンドがグラフディポでサポートされるようになりました。詳細 は、'p4 help -graph undo'を参照してください。 #1678111 (Bug #95713) ** 'auth-check-sso'トリガーがインストールされている場合の認証動作を変更す るための追加の構成可能変数が追加されました。'auth.sso.allow.passwd=1' を設定すると、データベースに対するパスワード認証にフォールバックするよ うに構成されたクライアント側の'P4LOGINSSO'トリガーなしでクライアントが 許可されます。 'auth.sso.nonldap=1'を設定すると、'LDAP'が有効なサーバの非LDAPユーザが 'auth-check-sso'トリガーに対して認証できるようになります。'auth.sso.no nldap=1'が設定されている場合、非LDAPユーザは、'auth.sso.allow.passwd=1 'も設定されていない限り、クライアント側の'P4LOGINSSO'トリガーを設定す る必要があります。 #1677404 (Bug #95408) ** 'p4 change -o'コマンドによるタグ付き出力には、'shelveUpdate'フィールド が含まれるようになり、チェンジリスト上の保留ファイルが最後に更新された 時刻が表示されます。 #1676951 (Bugs #43827, #95824) ** 'p4 user'コマンドの新しい'-D'フラグは、ユーザとすべてのユーザーのワー クスペースを削除し、すべてのユーザのファイルを元に戻します。 #1676343 (Bug #94823) ** 新しい構造化ログ'action.csv'が追加されました。これにより、サーバで発生 するユーザ開始イベントがログに記録されます。このログは、変更をポーリン グするダウンストリームツールによって利用されることを目的としています。 #1671478 ** パフォーマンスとセキュリティを向上させるために、さまざまなコンパイラの アップグレードが採用されています。これらの変更により、Linuxのファイル コミット率が10%改善されました。 #1666576 (Bug #92539) ** 'db.monitor.interval'のデフォルト値は30秒に変更されました。 これにより 、管理者は'p4 monitor terminate'を使用して古いプロセスを削除できます。 'p4 monitor terminate'を使用するには、'monitor'も少なくとも1に設定す る必要があります。 #1663100 (Bugs #95230, #95159) ** 構成可能変数'auth.sso.args'を設定することにより、追加の構成データがク ライアント側の'P4LOGINSSO'トリガーに送信されるようになりました。 この構成可能変数は、'%ssoArgs%'としてクライアント側の'P4LOGINSSO'トリ ガーに渡されます。さらに、サーバ側の'auth-check-sso'トリガーは、'%emai l%'および'%fullname%'のプレースホルダーを使用できるようになりました。 #1644456 (Bug #94149) ** 'p4 have'コマンドからのグラフディポ関連の出力が改善され、読みやすくな りました。ブランチと同期された'Commit sha'は同じ行に表示されます。 #1644554 (Bug #94184) ** グラフディポ用のクライアントに'P4IGNORE'のサポートが追加されました。 ---------------------------------------------------------------------- 2018.2 Patch 4のバグ修正 ------------------------ #1840011 (Bug #75382) ** 'モニターテーブル'で使用する共有メモリの最大サイズが小さすぎました(20 48 8Kページ)。 現在、メモリアドレス空間が厳しく制限されているWindows 32ビットを除くす べてのプラットフォームで32768ページが使用されます。 #1805688 (Bug #96532) ** 'p4 describe'は、追加されたファイルのファイルタイプを誤って'unset'と表 示しましたが、この問題は修正されました。 ---------------------------------------------------------------------- 2018.2 Patch 3のバグ修正 ------------------------ #1762665 (Bugs #97818, #97870, #97871) ** DVCSトリガー( 'push-submit'、 'push-content'、および 'push-commit') は、サブミットトリガーと同じ方法で排他マッピングをサポートするようにな りました。同じ名前とタイプを持つ複数の連続したトリガーエントリのパスは 、'単一マップ'に集約されます。 #1760683 (Bug #97566) ** フェイルオーバーが発生しているサーバのリスナーアドレスが、スタンバイサ ーバマシンに対して外部の'明示的なホスト'として定義されている場合、フェ イルオーバーが発生しているサーバは再起動に失敗しなくなりました。外部ホ ストは、継承されたサーバのリスナーアドレスを定義から削除されます。 #1760113 (Bug #97155) ** 'p4 submit -e'コマンドの実行中に保留を削除すると、元に戻せないファイル が開いたままになることがありましたが、この問題は修正されました。 #1754580 (Bug #97618) ** エッジサーバは、エッジサーバでサブミットプロセスが進行中に作成された保 留を削除できなくなりました。 ---------------------------------------------------------------------- 2018.2 Patch 2のバグ修正 ------------------------ #1750136 (Bug #95082) **** *** ** * Rpc :: Close()の最後のselect()は、SSL接続をブロックしなくなりまし た。タイムアウトは'net.maxclosewait'の影響を受けます。 #1750068 (Bug #96682) ** 'タスクストリーム'のコンテキストで'import+'ファイルのみの'p4 submit'が 失敗し、'Not permitted to update a task stream and Import+ file at th e same time'というメッセージが表示されていました。この問題は修正され、 'import+'ファイルのサブミットのみが'タスクストリーム'から許可されるよ うになりました。しかし、'import+'ファイルと'task stream'ファイルの混在 使用の提出は、まだ許可されていないことに注意してください。 #1748252 (Bug #87889) ** エッジサーバで実行された'p4 reopen'コマンドは、オープンされたファイル の所有者を変更するときに、コミットサーバへ'ロック'の更新を伝達しません でした。 この問題を修正するためには、コミットサーバとエッジサーバの両方をアップ グレードする必要があります。 #1746799 (Bug #95435) ** 'p4 undo'コマンドは、元に戻すファイルがサブミット前に'p4 edit'コマンド で変更された場合に誤った解決アクションを記録していましたが、この問題は 修正されました。 ---------------------------------------------------------------------- 2018.2 Patch 1のバグ修正 ------------------------ #1738306 (Bug #3933) ** 'p4 print -o'は、ワイルドカードを使用してパスを処理し、クライアントの ファイルシステムに複数のファイルを書き込みます。'-o'フラグ引数のワイル ドカードと'filespec'は一致する必要があります。 #1734880 (Bug #97134) ** グループ名にワイルドカードを含むグループのプロテクションエントリは、サ ーバのクラッシュを引き起こす可能性がありましたが、この問題は修正されま した。 #1730693 (Bug #97079) * ctrl-cによって中断された'p4 login'コマンドがハングしなくなりました。 #1730544 (Bug #96839) ** 構成された拡張インスタンスの'ExtRev'フィールドを変更すると、以前の拡張 インスタンスは複製のままで残されましたが、この問題は修正されました。 #1729566 (Bug #97065) ** 認証トリガーが存在する場合、'p4 -ztag info'コマンドの結果に'security' タグが表示されるようになりました。さらに、'auth-check-sso'が構成されて いる場合、'ssoAuth'タグも表示され、'P4LOGINSSO'が'必須'か'オプション' かが表示されます。 #1729420 (Bug #96450) ** 'p4 populate'コマンドは、クライアントの'ChangeView'を誤って考慮してい ました。このコマンドは'Client View'を無視するように、'ChangeView'も無 視するようになりました。 #1726738 (Bug #96662) ** 'ファイル転送スレッド'がエラーなしで終了した場合、並列サブミットはアー カイブコンテンツの転送に失敗する可能性がありました。この問題は、サブミ ットが続行され成功を報告する前にアーカイブがサーバに存在することを確認 することで修正されました。 ---------------------------------------------------------------------- 2018.2 のバグ修正 ------------------------ #1716935 (Bug #96569) ** 'p4 switch stream@change'コマンドは、ファイルを同期するときにストリー ムのインポートを考慮するようになりました。 #1716652 (Bug #96588) ** エッジサーバに対して'p4 fetch -t'コマンドを実行すると、サーバがクラッ シュする可能性がありましたが、この問題は修正されました。 #1716320 (Bug #96636) ** 'p4 describe'コマンドは、グラフディポのバイナリファイルを正しく処理し ていませんでしたが、この問題は修正されました。 #1716305 (Bug #96634) ** 'p4 revert'コマンドは、グラフディポ上のLFSバイナリファイルを正しく処理 していませんでしたが、この問題は修正されました。 #1715880,#1718570 (Bug #96580) ** グラフディポ上のバイナリファイルの衝突解決とマージが正しく処理されるよ うになりました。 #1715337 (Bug #96120) ** 'p4 undo'コマンドは、元に戻すファイルをワークスペースに配置するときに 現在のクライアントマッピングを使用します。'haveMaps'に保持されているフ ァイルの場所は無視されます。 #1714779 (Bug #91876) ** 'タスクストリーム'の親ストリームにあるファイルを消去すると、ディポから ファイルが誤って削除されましたが、この問題は修正されました。 #1712648 (Bug #94695) ** '+S'に移動したファイルを含むストリームの'p4 integ'コマンドが間違ったコ ンテンツを伝播する可能性がありましたが、この問題は修正されました。 #1712118 (Bug #86506) ** インテグレーションのためにオープンされ、以前にクライアントに同期されず 保留されていないファイルは、元に戻すときに削除されますが、後の同期エラ ーの原因となるレコードが残っていました。この問題は修正されました。 #1710647 (Bug #95908) ** マージされた'ktext'ファイルの改ざんチェックが復元されました。 #1709635 (Bug #96468) ** 競合するファイルでの'graph merge -n'操作は、マージが成功すると誤って表 示されていましたが、この問題は修正されました。 #1709629 (Bug #96469) ** 'graph merge -n'操作が正しくクリーンアップされず、後続のグラフマージ要 求が失敗していましたが、この問題は修正されました。 #1707891 (Bug #94445) ** 変更されていないグラフディポファイルの差分は、誤ったエラーメッセージを 報告しましたが、このメッセージ修正され、'file(s) not opened on this cl ient'になりました。 #1707354 (Bug #96381) ** チェックポイント操作中に'p4 journals'コマンドを実行すると、サーバがハ ングする可能性がありましたが、この問題は修正されました。 #1702795 (Bug #95804) ** ストリーム仕様で'import+'を使用してグラフディポパスを含めた場合、無視 される代わりにブロックされるようになりました。 #1702793 (Bug #94078) ** 誤って設定されたデフォルトブランチとリポを同期しようとすると、同期をブ ロックするのではなく、これらのリポジトリに対して警告が表示されるように なりました。 #1702779 (Bug #96093) ** '早送り'につながるグラフマージは、参照トリガーを起動しませんでしたが、 この問題は修正されました。 #1702778 (Bug #95055) ** エッジサーバは、コミットサーバ上のクライアントに固有のグラフメタデータ を複製しなくなりました。 #1702035 (Bug #96312) ** 多数の除外パス(exclude)や孤立パス(isolate)を持つストリーム仕様の処 理が高速化されました。 #1697165 ** 二要素認証機能は、多要素認証に名前が変更されました。これは、クライアン トに送信されるドキュメントとメッセージにのみ影響します。設定およびタグ 付き出力は変更されていません。 #1693712 (Bug #95114) ** 'p4 filelog'コマンドが実行中に、他のコマンドでデッドロックを引き起こす 可能性がありましたが、この問題は修正されました。 #1693683 (Bug #94452) ** 'update-ref'グラフコマンドは、'graph-push-reference'および'graph-push- reference-complete'トリガーの'%refFlags%'フィールドに正しい値を提供し ませんでしたが、この問題は修正されました。 #1693642 (Bug #96127) ** グラフコマンドのマージとリベースにより、作成したコミットに関連付けられ た新しいチェンジリストが作成されるようになりました。 #1692620 (Bug #96039) ** 予約文字を含むグラフ内のファイルは、標準のPerforceコマンドで指定できま せんでした。これらの文字は、指定時にエスケープされる場合があります。 #1691921 (Bug #96155) ** グループプロテクションのパフォーマンスを改善します。 #1690833 (Bug #95656) ** 'p4 stream edit'コマンドの後に、全てのクライアントワークスペースがスト リームビューの変更を確認するようになりました。 #1689825 (Bug #96001) ** グラフマージリクエスト中に、リポジトリおよび参照の許可が正しくチェック されるようになりました。 'submit'および'receive-pack'と同じモデルを使 用します。 #1689663 (Bug #96020) ** 複数のリポとソースコンポーネントが欠落している'グラフマージコマンド'は 、サーバをクラッシュさせる可能性がありましたが、この問題は修正されまし た。 #1688338 (Bug #90929) ** 'グラフ'タイプではない混合モードのクライアントビューでグラフファイルを 開くときに生成されるエラーメッセージが改善されました。'file is mapped read only'という文字列が追加されました。 #1688292 (Bug #90685) ** 'p4 graph receive-pack'コマンドの実行中にグラフのアクセス許可がチェッ クされる方法を変更しました。これにより、'サブミット'で使用されるメソッ ドがコピーされ、可能な場合は個々のファイルパスのチェックが回避されます 。 #1688251 (Bug #94895) ** スーパーユーザが'タスクストリーム'の空でないチェンジリストを削除するこ とは可能でしたが、この問題は修正されました。 #1686860 (Bug #95988) ** 並列同期の'-L'フラグが中断されてもサーバはクラッシュしなくなりました。 #1682979 (Bug #86492) ** 廃止された'バックアップ'フィールドは、クライアント仕様のコメントセクシ ョンから削除されました。 #1682468 (Bug #73624) ** 転送(エッジではない)レプリカを使用したレプリカパフォーマンスの保留が 改善されました。以前は、'p4 shelve -r'を指定すると、保留された変更の全 てのアーカイブが転送レプリカへ転送されていましたが、変更されたファイル のみを転送するように修正されました。 #1681302 (Bug #92509) ** 'p4 integration'の'-v'フラグは、'2016.1'でundocに移動されました。今回 の変更により、'-v'フラグがundocから'p4 help integrated'および'p4 integ rated'使用法メッセージへ戻ります。したがって、非推奨ではなくなりました 。 #1680899 (Bugs #90782, #85175, #75672, #85342) * 'コマンドライン'クライアントは、分岐したプロセスの代わりにスレッドを使 用して並列同期を実行するようになりました。 #1677801 (Bug #95012) ** '大規模な消去'、'削除'、または'タスク'から'開発'へのストリーム変換のエ ッジサーバ処理では、'rpl=4'でのジャーナルフックロギングでレプリケーシ ョンパフォーマンスの問題が発生する可能性がありましたが、ジャーナルフッ クロギングは、'rpl=4'ではなく、'rpl=5'で開始されるようになりました。 #1675879 (Bug #91061) ** ユーザが対象ファイルに対する書き込み権限を持っていない場合、'p4 edit/d elete/add'コマンドは警告を表示します。 #1673954 (Bug #95627) ** 'pull -L'は、実際にメタデータを適用しないエントリ(例:@nx@および@ex@ エントリ)のみを含む一貫性ポイントの終わりまで'state'ファイルを正しく 更新します。 #1673827 (Bug #69353) ** 'p4 pull -u'は、マスターサーバ上でコンテンツが見つからないか破損してい ることを検出すると、アーカイブコンテンツの'pull'を試行しなくなります。 #1671476 (Bug #95082) **** *** ** * Rpc :: Close()P4API関数はブロックselect()を実行しなくなりました。 タイムアウトを制御するには、構成可能変数'net.maxclosewait'を使用します (デフォルトは1秒)。 #1653848 (Bug #95033) ** マスターサーバのジャーナルがローテーションされるときに実行される'スタ ンバイ'または'転送スタンバイ'サーバ上でスケジュールされたチェックポイ ント作成は、以前にジャーナルコピーされたジャーナルを破損しなくなりまし た。 ---------------------------------------------------------------------- 2017.2の主な新機能 ------------------ #1547263 (Bug #92369) ** エッジサーバで、グラフディポからファイル情報を取得できるようになりまし た。pack ファイルおよび loose ファイル形式の両方で、グラフディポアーカ イブ用の複製がサポートされます。新しいデータは、Git Connector または'p 4 submit'や'p4 merge'でコミットを実行することによってプッシュできます 。 #1538827 (Bug #90551, #90550) ** 複製機能で、アーカイブデータにおける外部転送向けのメソッドがサポートさ れるようになりました。アーカイブファイルの外部転送を実行する --trigger や pull-archive トリガを実行するように、プルスレッドを構成することが 可能です。 さらに、通常の edge-content トリガを使うことで、エッジサーバからコミッ トサーバに対して、アーカイブの外部転送を行えるように'p4 submit'を構成 することもできます。この edge-content トリガで転送を実行するには、'p4 fstat -Ob'と外部ファイルの転送コマンドを呼び出さなければなりません。詳 細については、次の URL を参照してください。 http://answers.perforce.com/articles/KB/15337 ---------------------------------------------------------------------- 2017.2のテクノロジープレビュー機能 ---------------------------------- #1566758 (Bug #92605) ** グラフディポが機能改善されます。 git データモデルと併用する次のコマンドは、サポート予定機能としてドキュ メントに記載されています。対象コマンド: add/delete/diff/edit/filelog/f stat/merge/opened/revert/submit/switch/graph タグ。変更をサブミットで きるこれらのコマンドは、グラフディポに対してワークスペースの Type フィ ールドを設定する必要があります。これにより、書き込み可能とするデータモ デルを切り換えます (詳細については、'p4 help-graph'を実行のうえ、出力 される情報を確認してください)。 #1520950 (Bug #48959) ** 2 要素認証がサポートされます。ホストごとに、2 要素認証を構成できるよう になります。この認証方法を使うには、まず新しい認証トリガを 3 つ追加し て 2 要素認証を有効にしてから、ユーザ仕様でユーザの AuthMethod に 2FA 修飾子を設定します ('perforce'または'ldap'で使用可能)。新しいトリガは 以下のとおりです。 * auth-pre-2fa: 使用可能な2要素認証方式の一覧を表示 * auth-init-2fa: 指定の方式で2要素認証を実行 * auth-check-2fa: 2 要素認証におけるワンタイムパスワード/トークン/パス フレーズなどを検証。または現在のセッションの状態を確認 これらのトリガの出力は複雑です。詳しい説明や参考例については、'p4 help 2fa'を実行のうえ、出力される情報を確認するか http://answers.perforce. com/articles/KB/15334 を参照してください。 ---------------------------------------------------------------------- 2017.2のその他の新機能 ---------------------- #1559712 (Bug #50586) ** 新たに'p4 bgtask'コマンドが追加されました。このコマンドを使うことで、 スーパーユーザはサーバ上のプログラムをリモートから実行したり、起動コマ ンドとして実行したりすることができます。 #1558406 (Bug #75754) ** 'p4 pull -R'を実行することで、'p4 pull -u'で失敗した処理を簡単に再実 行することが可能です。 #1556644 (Bug #88636) ** コミットサーバ上で'p4 pull -l (および p4 pull -ls)'コマンドを実行する ことで、コミットサーバに複製されるエッジサーバ内のサブミットを一覧表示 できるようになりました。 #1553712 (Bug #92324) * ** filesys.checklinks 構成可能変数が'3'に設定されている場合、ディレクトリ を指すシンボリックリンクに対してファイルの追加や照合を行えるようになり ました。 #1538126 (Bug #91517) ** 別々のプルスレッドに対して、異なるサイズのファイルを割り当てるために、 'p4 pull -u --batch'で新しい'--min-size'と'--max-size'オプションを使え るようになりました。 #1536638 (Bug #92216) ** すべてのトリガにおいて、ユーザ指定の言語を提供する'language'変数が新た に実装されました。言語が指定されていない場合、この変数には'unset'が設 定されます。 #1536367 (Bug #80896) ** 'p4 shelve'コマンドに、新しく'--parallel'オプションが追加されました。 このオプションを指定すると、自動的に生成された子プロセスから個別のネッ トワーク接続を介して、並列で転送する必要のある複数のファイルを指定する ことが可能です。さらに、新しく実装された'net.parallel.shelve.*'構成可 能変数を設定することで、'p4 shelve'の実行時に並列スレッドを用いてファ イルを転送することができます。詳細については、'p4 help shelve'や'p4 he lp configurables'を実行のうえ、出力される情報を確認してください。 #1531997 (Bug #29410) ** 'p4 describe'コマンドに'-a'オプションが追加され、追加されたファイルの 内容を表示できるようになりました。 #1519158 (Bug #14944, #15488) ** 'p4 changes'コマンドに'-r'オプションが追加され、コマンドの出力を元に戻 せるようになりました。 ---------------------------------------------------------------------- 2017.2 Patch 3のバグ修正 ------------------------ #1620423 (Bug #90502) ** 分散環境における 'p4 resolve' による衝突解決でファイルタイプの '+l'修 飾子付きを '+l'修飾子なしに変更した後、孤立したロックが放置される問題 がありました。この問題は修正されました。 #1618401 (Bug #94152) ** 同一ラベルに対する作成と削除が競合したとき、ハングする問題は解決されま した。 #1616808 (Bug #94116) ** パラメータなしで 'p4 shelve -d' を実行したときにメモリリークが発生する 問題は修正されました。 #1614169 (Bug #94050) ** 'p4 keys -e nameFilter'コマンドは、キー名の中にピリオドをサポートする ようになりました。 #1611860 (Bug #92645) ** いくつかのケースにおける、プロキシを経由した並行取得のパフォーマンスが 改善されました。 #1609806 (Bug #93947) ** ファイルがコマンド内に指定され、かつチェンジリストに存在しないとき、sh elvedelete トリガが起動しませんでした。この問題は解決されました。 #1609792 (Bug #93973) ** スペックディポが存在すると、'p4 ldapsync -u'コマンドでユーザが削除され ない場合がありました。この問題は修正されました。 ---------------------------------------------------------------------- 2017.2 Patch 2のバグ修正 ------------------------ #1607486 (Bug #93936) ** 'p4 merge'のグラフモードにおいて、--squash オプションが認識されず、可 能な場合に fast-forward が実行される場合がありました。この問題は修正さ れました。 #1606983 (Bug #93931) ** 'p4 merge'のグラフモードは、--no-ff と --squash を同時に受け入れなくな りました。 #1606951 (Bug #93857) ** 破損した git パックインデックスに対してエラーが返るようになりました。 #1606799 (Bug #93925) ** 'p4 copy' および 'p4 integ' の要求は、グラフクライアントに対して拒否さ れるようになりました。 #1605825 (Bug #93871) ** 分割されたワークスペースまたは読み取り専用のワークスペースを用いて、レ プリカに対して 'p4 where' を実行すると、同一コネクションで実行される追 加コマンドからの出力が抑止される場合がありました。この問題は修正されま した。 #1605817 (Bug #93794) ** 空の repo ブランチに対して 'p4 files' コマンドを実行したとき、適切に ' no such file(s).' が通知されるようになりました。 OpenSSL のバージョンが 1.0.2n に更新されました。 #1603922 (Bug #93716) ** 'client -d -f'コマンドの延長で実行されるリバート(元に戻す)は、より少 数の大きなトランザクションで処理されるようになりました。結果として、こ のコマンドはより効率的に複製されます。 #1600238 (Bug #93691) ** 'p4 describe'コマンドは、削除されたファイルを含むコミットを適切にレポ ートするようになりました。 ---------------------------------------------------------------------- 2017.2 Patch 1のバグ修正 ------------------------ #1588156 (Bug #92867) ** p4 describe -n コマンドで、 に誤った リポジトリ (別のリポジトリ) が指定されると、誤解を招くようなメッセージ が表示されていました。"Blob data not found for sha..." ではなく、"Comm it not found in repo"というメッセージが表示されていた問題が修正 されました。 #1588156 (Bug #92123) ** p4 describe -n repo コマンドは、各差分のセグメント間でフ ァイル名を指定できませんでした。1 つ以上のファイルが変更された場合には 必ず、最初の差分セグメントがどこで終わり、次のセグメントがどこから始ま るかを知る方法がありませんでしたが、この問題は修正されました。 #1590975 (Bug #93382) ** あらゆる環境において、特定のサーバに関連付けられたクライアントの使用が 、それらのサーバに制限されていなかった問題が修正されました。 #1589629 (Bug #92849) ** 'p4 rec -a ...' または 'p4 add ...' をワークスペースルートから実行し、 そのルートディレクトリ名に過渡に円が指定されている場合、クライアントが 異常終了してた問題が修正されました。 #1587659 (Bug #92240) * ** *** **** バージョン 2017.1 の TCP のパフォーマンス改善に影響を与えた write/writ e のデッドロックの問題を解決するために、試験的な修正が行われました。こ の修正で問題がないことが十分に確認されるまで、本機能におけるデフォルト の挙動は無効化されたままとなります。この修正を有効にして検証を行うには 、クライアント、各中継プログラム、サーバ上で構成可能変数'net.autotune' を 1 に設定しなければなりません。例えば、P4V でこれを有効にする場合に は、P4V のスタートアップディレクトリにある P4CONFIG ファイルで'net.aut otune=1'を定義してください。 #1587040 (Bug #93117) ** 'p4 pull --trigger' コマンドを実行してグラフディポかからバージョン可フ ァイルをプルできず、"Permission denied" というエラーがログに出力されて いた問題が修正されました。 #1586858 (Bug #93136) ** 'rpl.forward.login' を使わないレプリカで、LDAP ベースのユーザの自動作 成を行うと、レプリカ上にしかユーザが作成されなかった (マスターにユーザ が作成されない) 問題が修正されました。 #1584626 (Bug #92894) ** 'p4 -ztag describe -S' コマンドにおいて、保留中の内容を表示できない場 合においても、shelveAccess の日付が更新される問題が修正されました。 #1583727 (Bug #93160) ** グラフディポのファイルに対して 'p4 edit -t type' コマンドを実行しても 、コミットされたツリーオブジェクト内のファイルタイプが更新されない問題 が修正されました。 #1579211 (Bug #92972) ** 'p4 help-graph opened' および 'p4 help-graph revert' コマンドでグラフ ディポ固有のヘルプが表示されるようになりました (サポート予定機能を参照 )。 OpenSSL のバージョンが 1.0.2m に更新されました。 ---------------------------------------------------------------------- 2017.2のバグ修正 ---------------- #1577859 (Bug #93001) ** ブランチへのアクセスが一部の反映履歴内において除外されている場合に、'p 4 annotate -I' コマンドが異常終了しなくなりました。 #1577673 (Bug #92882) ** 並列サブミット時に、エッジサーバからコミットサーバに対するバージョン化 ファイルの転送の失敗が、場合によっては検出されていませんでした。このよ うな状況でサブミットに成功した場合、コミットサーバ上のバージョン化ファ イルは消失していました。この問題は修正され、ファイル転送に失敗したとき には必ずコマンドの実行も失敗するようになりました。 #1573540 (Bug #92777, #92817) ** 'p4 reconcile -a' および 'p4 clean' コマンドは、'@' を含むディレクトリ からオプションを指定せずに実行されると、追加や復元を行うファイルの検出 に失敗していましたが、この問題は修正されました。 #1572571 (Bug #91927) ** ルーティングブローカから適切にログインせずに 'p4 have' を実行すると、 応答するレプリカによって、'restricted to use' または 'invalid or unset ' のいずれかのエラーメッセージが表示されていましたが、'invalid or unse t' だけが表示されるようになりました。 #1570784 (Bug #92648) ** ブローカからレプリカへ転送されるログインにおいて、クライアントの接続が 不適切なタイミングで破棄されると、レプリカ <-> マスター間の接続が確立 されたままの状態になっていました。 #1568172 (Bug #91885) ** バージョン 15.2 より前のワークスペースを用いて、リネームした 'utf8' フ ァイルをサブミットすると、アーカイブファイルが消失するという問題が修正 されました。 #1567257 (Bug #92360) ** グラフディポのバージョン化ファイルでは、構成可能変数 server.depot.root を利用しなければなりません。注意: アップグレード前にすでに server.dep ot.rootが設定されていた場合には、バージョン 17.1 -> 17.2 へアップグレ ードする前にグラフディポのバージョン化ファイルを手動で移動させる必要が あります。 #1561151 (Bug #92417) ** 整合ポイントの複製時における遅延によって、'journalcopy' スレッドが書き 込むジャーナルファイルが破損しなくなりました。 #1558115 (Bug #92327) ** +Sn ファイルのサブミットしても、'clone' または 'fetch' の同時操作が正 常に実行できるようになりました。 #1529453 (Bug #91971) ** 分散環境において、転送スレッド間の負荷が問題にならない場合に、並列同期 のパフォーマンスが改善されました。 #1526861 (Bug #90476) ** 'p4 sync -r ' コマンドは、ファイルがリネーム (移動) するファイル の'to(移動先)' または 'from(移動元)' のいずれかの状態の場合、エラーを 出力していました。 #1526302 (Bug #90686) ** Perforce API の受信章バッファサイズを 1MB に増加することで、一部の WAN を介した操作においてパフォーマンスの著しい改善が見られ、場合により、 ネットワークの遅延を防げます。以前の設定値は 32k でした。この値は net. rcvbufsizeで変更可能です。 #1526247 (Bug #90798) ** リポジトリ (グラフディポ) に対して 'p4 sync' を実行しても、ワークスペ ースオプション 'noclobber' が適用されませんでした。 #1525293 (Bug #90697) ** エッジサーバから並列サブミットする際、ktext ではないファイルに RCS キ ーワードが含まれていると、それらのバージョン化ファイルが破損する問題が 修正されました。 #1523244 (Bug #89630) ** サーバで並列処理される 'user-transmit' スレッドの合計数が、構成可能変 数'net.parallel.sync.svrthreads' に定義されている値を上回ると、同変数 によって sync コマンドが使用する並列転送時のスレッド数が抑えられます。 この新しい構成可能変数を有効にするには、サーバ監視機能を有効にしなけれ ばなりません。 #1521469 (Bug #88774) ** 未知のチェンジリスト識別子の値を使い 'p4 describe -I' および 'p4 chang e -I'で出力されるエラーメッセージの内容が不明確でした。これらのエラー の内容が、より明確に分かりやすくなりました。 #1519323 (Bug #91682) ** 'track' 構成可能変数にゼロを設定することで、'rdb.lbr' の追跡メトリクス がレプリカのサーバログに出力されないようになりました。 #1519279 (Bug #91568) ** dm.shelve.promote=1 および security=3 がエッジサーバで設定されている場 合、エッジサーバで実行した'p4 shelve' と 'p4 submit' のタグ情報に 'チ ェンジリスト' 番号が出力されない問題が修正されました。 #1516923 (Bug #91055) ** 'annotate -I' コマンドは、複数のブランチに反映される "from(反映元)" と なるディポファイルの必要なリビジョンすべてを、反映履歴からアクセスでき るもとのとして認識するようになりました。 #1506651 (Bug #90330) ** 'p4 copy' は、リネーム (移動) が複雑な場合、必要なコピーと過去のコピー を消失することがありました。