问题标签 [orphan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
15750 浏览

git - Git Merge 提交到孤立分支

我很想知道您是否可以以及将提交合并到我的孤立分支中是否有任何问题。对于这个特定的实例,我的 Salesforce 存储库有一个主分支和一个预发布分支,但是因为我们的沙盒环境通常具有不属于生产的元数据,但我们希望对其进行版本控制,但与我们干净的预发布分支足够分离。

因此,我们有以下内容:

0 投票
3 回答
1646 浏览

c# - NHibernate:更改父级 - “删除的对象将被级联重新保存”

正如标题所说,基本上我想做的就是改变孩子的父母。但是当我尝试这样做时,我得到了异常“ObjectDeletedException:已删除的对象将被级联重新保存(从关联中删除已删除的对象)”。

我已经在谷歌上搜索了几个小时,但我找到的解决方案都没有为我工作!

这些是我参与的课程:

实体类是具有 Id 属性的实体。

这是父级的映射(Parents.hbm.xml):

这是我尝试将孩子重新分配给另一个父母的代码:

但是随后,session.Flush()抛出了上面的异常。我想问题是因为孩子改变了他的父母,因为级联NHibernate将不得不消除孩子,但后来它被重新分配给另一个父母,所以再次因为级联,它必须重新保存孩子。

我已经尝试更改映射,并从前父母的集合中删除子项(在我将其分配给另一个父母之前或之后),但这些都不起作用......

任何帮助将不胜感激!

谢谢!!

0 投票
1 回答
1083 浏览

php - Symfony2:删除时断开关联

我有两个实体 -BackgroundAction. 一个Background有很多Actions

当我删除 aBackground我想保留Action但为的外键。以满足约束的方式有效地孤立实体。我已经阅读了很多关于cascade={"remove"}orphanRemoval的文章和问题,但所有这些似乎都会导致删除孤立的动作(根本不是我想要的)或什么都不做——这会导致违反完整性约束.

目前,我找到的解决方案是遍历相关的 Actions 并将该字段设为 null 并持续存在。这不可能是最好的前进方式。

0 投票
3 回答
475 浏览

java - 如何在 JPA 中仅删除父实体

我有一个 Person 对象。Person 有一个同样是 Person 类型的 manager 属性。

假设 John 是经理,Bob 是员工。当我试图删除 John 时,由于 Bob 成为孤儿(没有经理),它失败了。在我的用例中应该允许这样做。但是将这种关系标记为“可选”并没有帮助。而Cascade在这里似乎没有任何意义。

我认为这可以通过 JPA 实现。有什么帮助吗?

0 投票
1 回答
164 浏览

excel - MSAccess 2010 VBA Excel 进程未终止

我正在使用 Window 7 SP1 和 MS Office 2010。我在 Access 2010 中运行查询,并将结果写入 Excel 2010 的报告中,并注意到 Excel 的实例不会从进程列表中终止。为了确保它不是我的代码,我已经把它剥离了基础。

  1. 以下代码按预期打开并终止 Excel:

    /li>
  2. 但是,如果我引用工作簿,Excel 流程实例不会终止。对谈话主题的搜索引用了在 Access 关闭后一段时间“ping”超时后终止的进程——这里不是这种情况。

    /li>

我已取消选中 Microsoft Excel 14.0 对象库参考。我认为我没有进行任何全球参考电话。我看不到我做错了什么。

0 投票
1 回答
363 浏览

github - Github Pages - 新的孤儿分支 - 我的主人在哪里

我想使用 github pages 分支(项目页面)向客户显示我到目前为止的静态网页的进度。我遇到了这个页面:

http://blog.teamtreehouse.com/using-github-pages-to-host-your-website

我被告知要创建一个名为 gh-pages 的新孤立分支。我这样做了。我的终端说我在我的“gh-pages”分支中,但我的 git 客户端 sourcetree 向我显示了一个清空的 master。那不是我想要的。我现在真的不敢往我清空的 master 里塞东西,因为我真的很期待在我的 gh-pages 分支上。

对 stackoverflow 的搜索让我发现: Github page shows master branch, not gh-pages

这与我的问题非常接近,但答案如下:

项目页面可以是任何存储库的一部分,并从特殊的 > gh-pages 分支发布。可以在http://username.github.io/project-name浏览它们。

所以我真的很困惑......我不能再访问我的主人了吗?我一推东西,名字会变成“gh-pages”吗?同样在Github上在线我只看到旧数量的分支,并没有出现gh-branch......

我将非常感谢您能快速回答这个问题。

提前感谢您,祝您有美好的一天。

0 投票
3 回答
3325 浏览

java - Java 中的孤儿对象是好是坏?

我想了解 Java 编程中的对象创建最佳实践。我在下面给出了一个例子请检查并建议我Java中的孤儿对象好还是坏?

我有一个Shape界面。

  1. Circle implements Shape
  2. Square implements Shape
  3. Cube implements Shape
  4. Sphere implements Shape

方法#1 导致孤立对象,方法#2 导致不必要的引用。哪种方法是最佳实践?

方法#1

方法#2

0 投票
1 回答
2329 浏览

hibernate - 将子项从父项迁移到另一个父项时将 orphanRemoval 设置为 true

重要通知:如果您正在阅读这篇文章,请考虑查看这篇文章以进行深入讨论。


这是一种非常常见的做法/情况/要求,父母的孩子可能会迁移到另一位父母。如果orphanRemoval设置为true这种关系的反面,会发生什么?

作为一个例子,任何简单的一对多关系如下。

反面(部门):

拥有方(员工):

在合并如下操作/动作时(department客户端提供的分离实体在哪里),

当然,添加和删除员工可能会更好地使用关联实体中的防御性链接(关系)管理方法来完成/处理。

部门实例由客户提供。它是一个分离的实体。它可以是相同或不同的部门,具体取决于相关客户执行的管理操作。因此,如果客户提供的部门实例与当前持有的部门实例不同,Employee则应先将其从当前部门employeeList持有的员工列表中删除,然后再添加它将新供应的员工名单列入。Employeedepartment

作为一种猜测,当从员工的部门当前引用的员工列表中删除实例时,Employee应该无意中从数据库中删除了该行Employee- 旧部门(在触发此操作之前),即在将子项从其父项迁移到另一个父母,孩子在被另一个父母收养之前需要从其本地父母中删除,并且该子行应该被无意中从数据库中删除(orphanRemoval = true)。

但是,数据库表中的员工行与更新的列值保持不变。除语句外,不生成任何 DML 语句UPDATE

我是否可以考虑,以这种方式将孩子从他们的父母迁移到另一个父母,不会无意中从数据库表中删除这些孩子,因为他们不应该这样做?

当前使用具有 JPA 2.1 的 EclipseLink 2.6.0。


编辑:

如果一个Employee实体只是从反面的列表中删除(因此,在删除后没有添加到列表中 - 没有迁移到另一个父级,而是刚刚删除),那么它的相应行也照常从数据库中删除(orphanRemoval = true)但是该行只是更新,当一个Employee实体(子)从其本机父级列表中删除后被添加到另一个父级列表中(实体的迁移)。

提供者似乎足够聪明,可以检测到孩子从父母迁移到另一个父母,作为更新。

在 Hibernate (4.3.6 final) 和 EclipseLink (2.6.0) 上可以看到相同的行为,但如果它是提供程序特定的行为(不可移植),则不能依赖它。我在 JPA 规范中找不到有关此行为的任何信息。

0 投票
0 回答
609 浏览

git - Git - 克隆存储库并将其设置为孤立提交

每次将提交推送到 Stash 存储库时,都会在我们的构建系统中触发构建。但是,有时,人们会对该提交进行变基,因此它不再包含在分支中。

我们的构建系统会克隆存储库,然后执行以下命令:

但是,该命令失败,因为克隆似乎获取了分支的提交列表,并且该提交不再包含在分支中,即使在尝试在 Stash 中访问它时该提交仍然存在。

有没有办法获取该特定提交,以便系统可以从孤立的提交构建代码?

0 投票
2 回答
967 浏览

c - 在 C 程序 Linux 中,父母死亡并没有杀死孩子进程

请看下面的代码:

从终端 1 运行此代码:

转到终端 2,并检查终端 1 上的进程:

两个a.out在这里运行。现在杀死父 4007。

注意 4008 仍在运行,它现在是 2077(init --user) 的子节点。

我的疑问是:

  1. 为什么孩子没有在父母死前被父母杀死?
  2. 通常,如果我们在没有“nohup”的情况下从终端(bash)运行任何进程,并杀死 bash,那么 bash 的孩子就会被杀死。如何在我们的 C 程序中实现这种行为?
  3. 我认为默认行为是父母在死前杀死了它的孩子,我们必须调用 wait() 来克服这种行为。但是我错了。那么wait()的目的是什么?

我正在使用带有 3.13.0-52-generic 内核的 Ubuntu 14。